]> err.no Git - linux-2.6/blobdiff - drivers/media/video/cx88/cx88.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6
[linux-2.6] / drivers / media / video / cx88 / cx88.h
index 42e0a9b8c55006f4770a3de97e41f86eb3d1a882..4e823f2a539a39eb88186c6c774f57947384617b 100644 (file)
@@ -210,6 +210,7 @@ extern struct sram_channel cx88_sram_channels[];
 #define CX88_BOARD_TE_DTV_250_OEM_SWANN    55
 #define CX88_BOARD_HAUPPAUGE_HVR1300       56
 #define CX88_BOARD_ADSTECH_PTV_390         57
+#define CX88_BOARD_PINNACLE_PCTV_HD_800i   58
 
 enum cx88_itype {
        CX88_VMUX_COMPOSITE1 = 1,
@@ -228,7 +229,7 @@ struct cx88_input {
        enum cx88_itype type;
        u32             gpio0, gpio1, gpio2, gpio3;
        unsigned int    vmux:2;
-       unsigned int    extadc:1;
+       unsigned int    audioroute:2;
 };
 
 struct cx88_board {
@@ -412,7 +413,9 @@ struct cx8802_suspend_state {
 
 struct cx8802_driver {
        struct cx88_core *core;
-       struct list_head devlist;
+
+       /* List of drivers attached to device */
+       struct list_head drvlist;
 
        /* Type of driver and access required */
        enum cx88_board_type type_id;
@@ -453,27 +456,34 @@ struct cx8802_dev {
 
        /* for blackbird only */
        struct list_head           devlist;
+#if defined(CONFIG_VIDEO_CX88_BLACKBIRD) || \
+    defined(CONFIG_VIDEO_CX88_BLACKBIRD_MODULE)
        struct video_device        *mpeg_dev;
        u32                        mailbox;
        int                        width;
        int                        height;
+       unsigned char              mpeg_active; /* nonzero if mpeg encoder is active */
+
+       /* mpeg params */
+       struct cx2341x_mpeg_params params;
+#endif
 
 #if defined(CONFIG_VIDEO_CX88_DVB) || defined(CONFIG_VIDEO_CX88_DVB_MODULE)
        /* for dvb only */
        struct videobuf_dvb        dvb;
+#endif
 
-       void                       *card_priv;
+#if defined(CONFIG_VIDEO_CX88_VP3054) || \
+    defined(CONFIG_VIDEO_CX88_VP3054_MODULE)
+       /* For VP3045 secondary I2C bus support */
+       struct vp3054_i2c_state    *vp3054;
 #endif
        /* for switching modulation types */
        unsigned char              ts_gen_cntrl;
 
-       /* mpeg params */
-       struct cx2341x_mpeg_params params;
-
        /* List of attached drivers */
-       struct cx8802_driver       drvlist;
-       struct work_struct request_module_wk;
-
+       struct list_head           drvlist;
+       struct work_struct         request_module_wk;
 };
 
 /* ----------------------------------------------------------- */
@@ -580,6 +590,7 @@ extern void cx88_call_i2c_clients(struct cx88_core *core,
 /* ----------------------------------------------------------- */
 /* cx88-cards.c                                                */
 
+extern int cx88_tuner_callback(void *dev, int command, int arg);
 extern int cx88_get_resources(const struct cx88_core *core,
                              struct pci_dev *pci);
 extern struct cx88_core *cx88_core_create(struct pci_dev *pci, int nr);
@@ -625,12 +636,6 @@ int cx8802_buf_prepare(struct videobuf_queue *q,struct cx8802_dev *dev,
 void cx8802_buf_queue(struct cx8802_dev *dev, struct cx88_buffer *buf);
 void cx8802_cancel_buffers(struct cx8802_dev *dev);
 
-int cx8802_init_common(struct cx8802_dev *dev);
-void cx8802_fini_common(struct cx8802_dev *dev);
-
-int cx8802_suspend_common(struct pci_dev *pci_dev, pm_message_t state);
-int cx8802_resume_common(struct pci_dev *pci_dev);
-
 /* ----------------------------------------------------------- */
 /* cx88-video.c*/
 extern const u32 cx88_user_ctrls[];