struct em28xx {
struct kref ref;
+ /* Sub-module data */
+ struct em28xx_dvb *dvb;
+ struct em28xx_audio adev;
+ struct em28xx_IR *ir;
+
/* generic device properties */
char name[30]; /* name (including minor) of the device */
int model; /* index in the device_data struct */
struct em28xx_fmt *format;
- struct em28xx_IR *ir;
-
/* Some older em28xx chips needs a waiting time after writing */
unsigned int wait_after_write;
unsigned long i2c_hash; /* i2c devicelist hash -
for boards with generic ID */
- struct em28xx_audio adev;
-
/* capture state tracking */
int capture_type;
unsigned char top_field:1;
/* Snapshot button input device */
char snapshot_button_path[30]; /* path of the input dev */
struct input_dev *sbutton_input_dev;
-
- struct em28xx_dvb *dvb;
};
#define kref_to_dev(d) container_of(d, struct em28xx, ref)