diff options
Diffstat (limited to 'linux/drivers/media/dvb/dvb-usb/dvb-usb.h')
-rw-r--r-- | linux/drivers/media/dvb/dvb-usb/dvb-usb.h | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/linux/drivers/media/dvb/dvb-usb/dvb-usb.h b/linux/drivers/media/dvb/dvb-usb/dvb-usb.h index ac923b5b2..d7835721b 100644 --- a/linux/drivers/media/dvb/dvb-usb/dvb-usb.h +++ b/linux/drivers/media/dvb/dvb-usb/dvb-usb.h @@ -17,6 +17,8 @@ #include "dvb_net.h" #include "dmxdev.h" +#include "dvb-usb-ids.h" + /* debug */ #ifdef CONFIG_DVB_USB_DEBUG #define dprintk(var,level,args...) \ @@ -63,7 +65,8 @@ struct dvb_usb_properties { #define DVB_USB_HAS_PID_FILTER 0x01 #define DVB_USB_PID_FILTER_CAN_BE_TURNED_OFF 0x02 -#define DVB_USB_IS_AN_I2C_ADAPTER 0x04 +#define DVB_USB_NEED_PID_FILTERING 0x04 +#define DVB_USB_IS_AN_I2C_ADAPTER 0x08 int caps; #define CYPRESS_AN2135 0 @@ -96,6 +99,9 @@ struct dvb_usb_properties { /* i2c algorithm, if any */ struct i2c_algorithm i2c_algo; +/* endpoint for generic bulk read/write operations (used by many drivers for controlling the device) */ + int generic_bulk_ctrl_endpoint; + /* MPEG2 TS transfer description */ struct { #define DVB_USB_BULK 1 @@ -174,7 +180,11 @@ struct dvb_usb_device { void *priv; }; -int dvb_usb_device_init(struct usb_interface *, struct dvb_usb_properties *); -void dvb_usb_device_exit(struct usb_interface *); +extern int dvb_usb_device_init(struct usb_interface *, struct dvb_usb_properties *); +extern void dvb_usb_device_exit(struct usb_interface *); + +/* the generic read/write method for device control */ +extern int dvb_usb_generic_rw(struct dvb_usb_device *, u8 *, u16, u8 *, u16); +extern int dvb_usb_generic_write(struct dvb_usb_device *, u8 *, u16); #endif |