aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/tm6000/tm6000.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/tm6000/tm6000.h')
-rw-r--r--drivers/staging/tm6000/tm6000.h25
1 files changed, 24 insertions, 1 deletions
diff --git a/drivers/staging/tm6000/tm6000.h b/drivers/staging/tm6000/tm6000.h
index 6812d6867d5..7bbaf26dea1 100644
--- a/drivers/staging/tm6000/tm6000.h
+++ b/drivers/staging/tm6000/tm6000.h
@@ -168,6 +168,10 @@ struct tm6000_core {
168 struct i2c_adapter i2c_adap; 168 struct i2c_adapter i2c_adap;
169 struct i2c_client i2c_client; 169 struct i2c_client i2c_client;
170 170
171
172 /* extension */
173 struct list_head devlist;
174
171 /* video for linux */ 175 /* video for linux */
172 int users; 176 int users;
173 177
@@ -203,6 +207,16 @@ struct tm6000_core {
203 spinlock_t slock; 207 spinlock_t slock;
204}; 208};
205 209
210#define TM6000_AUDIO 0x10
211
212struct tm6000_ops {
213 struct list_head next;
214 char *name;
215 int id;
216 int (*init)(struct tm6000_core *);
217 int (*fini)(struct tm6000_core *);
218};
219
206struct tm6000_fh { 220struct tm6000_fh {
207 struct tm6000_core *dev; 221 struct tm6000_core *dev;
208 222
@@ -232,6 +246,8 @@ int tm6000_get_reg (struct tm6000_core *dev, u8 req, u16 value, u16 index);
232int tm6000_get_reg16(struct tm6000_core *dev, u8 req, u16 value, u16 index); 246int tm6000_get_reg16(struct tm6000_core *dev, u8 req, u16 value, u16 index);
233int tm6000_get_reg32(struct tm6000_core *dev, u8 req, u16 value, u16 index); 247int tm6000_get_reg32(struct tm6000_core *dev, u8 req, u16 value, u16 index);
234int tm6000_set_reg (struct tm6000_core *dev, u8 req, u16 value, u16 index); 248int tm6000_set_reg (struct tm6000_core *dev, u8 req, u16 value, u16 index);
249int tm6000_i2c_reset(struct tm6000_core *dev, u16 tsleep);
250
235int tm6000_init (struct tm6000_core *dev); 251int tm6000_init (struct tm6000_core *dev);
236 252
237int tm6000_init_analog_mode (struct tm6000_core *dev); 253int tm6000_init_analog_mode (struct tm6000_core *dev);
@@ -246,6 +262,13 @@ int tm6000_v4l2_unregister(struct tm6000_core *dev);
246int tm6000_v4l2_exit(void); 262int tm6000_v4l2_exit(void);
247void tm6000_set_fourcc_format(struct tm6000_core *dev); 263void tm6000_set_fourcc_format(struct tm6000_core *dev);
248 264
265void tm6000_remove_from_devlist(struct tm6000_core *dev);
266void tm6000_add_into_devlist(struct tm6000_core *dev);
267int tm6000_register_extension(struct tm6000_ops *ops);
268void tm6000_unregister_extension(struct tm6000_ops *ops);
269void tm6000_init_extension(struct tm6000_core *dev);
270void tm6000_close_extension(struct tm6000_core *dev);
271
249/* In tm6000-stds.c */ 272/* In tm6000-stds.c */
250void tm6000_get_std_res(struct tm6000_core *dev); 273void tm6000_get_std_res(struct tm6000_core *dev);
251int tm6000_set_standard (struct tm6000_core *dev, v4l2_std_id *norm); 274int tm6000_set_standard (struct tm6000_core *dev, v4l2_std_id *norm);
@@ -275,7 +298,7 @@ unsigned int tm6000_v4l2_poll(struct file *file,
275int tm6000_queue_init(struct tm6000_core *dev); 298int tm6000_queue_init(struct tm6000_core *dev);
276 299
277/* In tm6000-alsa.c */ 300/* In tm6000-alsa.c */
278int tm6000_audio_init(struct tm6000_core *dev, int idx); 301/*int tm6000_audio_init(struct tm6000_core *dev, int idx);*/
279 302
280 303
281/* Debug stuff */ 304/* Debug stuff */