aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/usb/hdpvr/hdpvr.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/usb/hdpvr/hdpvr.h')
-rw-r--r--drivers/media/usb/hdpvr/hdpvr.h19
1 files changed, 16 insertions, 3 deletions
diff --git a/drivers/media/usb/hdpvr/hdpvr.h b/drivers/media/usb/hdpvr/hdpvr.h
index fea3c6926997..1478f3d57630 100644
--- a/drivers/media/usb/hdpvr/hdpvr.h
+++ b/drivers/media/usb/hdpvr/hdpvr.h
@@ -16,6 +16,7 @@
16#include <linux/videodev2.h> 16#include <linux/videodev2.h>
17 17
18#include <media/v4l2-device.h> 18#include <media/v4l2-device.h>
19#include <media/v4l2-ctrls.h>
19#include <media/ir-kbd-i2c.h> 20#include <media/ir-kbd-i2c.h>
20 21
21#define HDPVR_MAX 8 22#define HDPVR_MAX 8
@@ -37,6 +38,7 @@
37#define HDPVR_FIRMWARE_VERSION_AC3 0x0d 38#define HDPVR_FIRMWARE_VERSION_AC3 0x0d
38#define HDPVR_FIRMWARE_VERSION_0X12 0x12 39#define HDPVR_FIRMWARE_VERSION_0X12 0x12
39#define HDPVR_FIRMWARE_VERSION_0X15 0x15 40#define HDPVR_FIRMWARE_VERSION_0X15 0x15
41#define HDPVR_FIRMWARE_VERSION_0X1E 0x1e
40 42
41/* #define HDPVR_DEBUG */ 43/* #define HDPVR_DEBUG */
42 44
@@ -65,10 +67,19 @@ struct hdpvr_options {
65struct hdpvr_device { 67struct hdpvr_device {
66 /* the v4l device for this device */ 68 /* the v4l device for this device */
67 struct video_device *video_dev; 69 struct video_device *video_dev;
70 /* the control handler for this device */
71 struct v4l2_ctrl_handler hdl;
68 /* the usb device for this device */ 72 /* the usb device for this device */
69 struct usb_device *udev; 73 struct usb_device *udev;
70 /* v4l2-device unused */ 74 /* v4l2-device unused */
71 struct v4l2_device v4l2_dev; 75 struct v4l2_device v4l2_dev;
76 struct { /* video mode/bitrate control cluster */
77 struct v4l2_ctrl *video_mode;
78 struct v4l2_ctrl *video_bitrate;
79 struct v4l2_ctrl *video_bitrate_peak;
80 };
81 /* v4l2 format */
82 uint width, height;
72 83
73 /* the max packet size of the bulk endpoint */ 84 /* the max packet size of the bulk endpoint */
74 size_t bulk_in_size; 85 size_t bulk_in_size;
@@ -77,11 +88,11 @@ struct hdpvr_device {
77 88
78 /* holds the current device status */ 89 /* holds the current device status */
79 __u8 status; 90 __u8 status;
80 /* count the number of openers */
81 uint open_count;
82 91
83 /* holds the cureent set options */ 92 /* holds the current set options */
84 struct hdpvr_options options; 93 struct hdpvr_options options;
94 v4l2_std_id cur_std;
95 struct v4l2_dv_timings cur_dv_timings;
85 96
86 uint flags; 97 uint flags;
87 98
@@ -99,6 +110,8 @@ struct hdpvr_device {
99 struct workqueue_struct *workqueue; 110 struct workqueue_struct *workqueue;
100 /**/ 111 /**/
101 struct work_struct worker; 112 struct work_struct worker;
113 /* current stream owner */
114 struct v4l2_fh *owner;
102 115
103 /* I2C adapter */ 116 /* I2C adapter */
104 struct i2c_adapter i2c_adapter; 117 struct i2c_adapter i2c_adapter;