summaryrefslogtreecommitdiff
path: root/linux/drivers/media/dvb/dvb-usb/dvb-usb.h
diff options
context:
space:
mode:
Diffstat (limited to 'linux/drivers/media/dvb/dvb-usb/dvb-usb.h')
-rw-r--r--linux/drivers/media/dvb/dvb-usb/dvb-usb.h16
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