diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-12-28 20:18:14 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-12-30 06:39:37 -0500 |
commit | 1a23f81b7dc3115b29cff0e4f58b5dd04a6242ad (patch) | |
tree | 643b900aae78870a53fec3fdf1e15b400ae960c0 /drivers/media/video/em28xx/em28xx.h | |
parent | 126be90f720d9b23e89c68519022fb806882f42d (diff) |
V4L/DVB (9979): em28xx: move usb probe code to a proper place
em28xx-video were holding several code that are not specific to V4L2
interface.
This patch moves the core code for em28xx-core, and usb probing code
into em28xx-cards.
This opens the possibility of breaking em28xx into a core module and a
V4L2 module, loaded only on devices that have analog interfaces.
Some cleanup may be done at em28xx-cards to optimize the config code.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/em28xx/em28xx.h')
-rw-r--r-- | drivers/media/video/em28xx/em28xx.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/drivers/media/video/em28xx/em28xx.h b/drivers/media/video/em28xx/em28xx.h index 100f27819cdc..c8e71edbfea7 100644 --- a/drivers/media/video/em28xx/em28xx.h +++ b/drivers/media/video/em28xx/em28xx.h | |||
@@ -581,10 +581,21 @@ int em28xx_init_isoc(struct em28xx *dev, int max_packets, | |||
581 | void em28xx_uninit_isoc(struct em28xx *dev); | 581 | void em28xx_uninit_isoc(struct em28xx *dev); |
582 | int em28xx_set_mode(struct em28xx *dev, enum em28xx_mode set_mode); | 582 | int em28xx_set_mode(struct em28xx *dev, enum em28xx_mode set_mode); |
583 | int em28xx_gpio_set(struct em28xx *dev, struct em28xx_reg_seq *gpio); | 583 | int em28xx_gpio_set(struct em28xx *dev, struct em28xx_reg_seq *gpio); |
584 | 584 | void em28xx_wake_i2c(struct em28xx *dev); | |
585 | /* Provided by em28xx-video.c */ | 585 | void em28xx_remove_from_devlist(struct em28xx *dev); |
586 | void em28xx_add_into_devlist(struct em28xx *dev); | ||
587 | struct em28xx *em28xx_get_device(struct inode *inode, | ||
588 | enum v4l2_buf_type *fh_type, | ||
589 | int *has_radio); | ||
586 | int em28xx_register_extension(struct em28xx_ops *dev); | 590 | int em28xx_register_extension(struct em28xx_ops *dev); |
587 | void em28xx_unregister_extension(struct em28xx_ops *dev); | 591 | void em28xx_unregister_extension(struct em28xx_ops *dev); |
592 | void em28xx_init_extension(struct em28xx *dev); | ||
593 | void em28xx_close_extension(struct em28xx *dev); | ||
594 | |||
595 | /* Provided by em28xx-video.c */ | ||
596 | int em28xx_analog_config(struct em28xx *dev); | ||
597 | int em28xx_register_analog_devices(struct em28xx *dev); | ||
598 | void em28xx_release_analog_resources(struct em28xx *dev); | ||
588 | 599 | ||
589 | /* Provided by em28xx-cards.c */ | 600 | /* Provided by em28xx-cards.c */ |
590 | extern int em2800_variant_detect(struct usb_device *udev, int model); | 601 | extern int em2800_variant_detect(struct usb_device *udev, int model); |
@@ -595,6 +606,7 @@ extern struct usb_device_id em28xx_id_table[]; | |||
595 | extern const unsigned int em28xx_bcount; | 606 | extern const unsigned int em28xx_bcount; |
596 | void em28xx_set_ir(struct em28xx *dev, struct IR_i2c *ir); | 607 | void em28xx_set_ir(struct em28xx *dev, struct IR_i2c *ir); |
597 | int em28xx_tuner_callback(void *ptr, int component, int command, int arg); | 608 | int em28xx_tuner_callback(void *ptr, int component, int command, int arg); |
609 | void em28xx_release_resources(struct em28xx *dev); | ||
598 | 610 | ||
599 | /* Provided by em28xx-input.c */ | 611 | /* Provided by em28xx-input.c */ |
600 | int em28xx_get_key_terratec(struct IR_i2c *ir, u32 *ir_key, u32 *ir_raw); | 612 | int em28xx_get_key_terratec(struct IR_i2c *ir, u32 *ir_key, u32 *ir_raw); |