V4L/DVB (7229): saa7134: add support for the Creatix CTX953_V.1.4.3 Hybrid
[safe/jmp/linux-2.6] / drivers / media / video / tuner-xc2028.h
index a20eeb4..3eb8420 100644 (file)
 
 #define XC2028_DEFAULT_FIRMWARE "xc3028-v27.fw"
 
-enum xc2028_firm_type {
-       XC2028_FIRM_NORMAL,
-       XC2028_FIRM_MTS,
-};
+/*      Dmoduler               IF (kHz) */
+#define        XC3028_FE_DEFAULT       0
+#define XC3028_FE_LG60         6000
+#define        XC3028_FE_ATI638        6380
+#define        XC3028_FE_OREN538       5380
+#define        XC3028_FE_OREN36        3600
+#define        XC3028_FE_TOYOTA388     3880
+#define        XC3028_FE_TOYOTA794     7940
+#define        XC3028_FE_DIBCOM52      5200
+#define        XC3028_FE_ZARLINK456    4560
+#define        XC3028_FE_CHINA         5200
 
 struct xc2028_ctrl {
-       enum xc2028_firm_type   type;
        char                    *fname;
        int                     max_len;
+       unsigned int            scode_table;
+       unsigned int            mts   :1;
+       unsigned int            d2633 :1;
+       unsigned int            input1:1;
+       unsigned int            vhfbw7:1;
+       unsigned int            uhfbw8:1;
+       unsigned int            demod;
 };
 
 struct xc2028_config {
        struct i2c_adapter *i2c_adap;
        u8                 i2c_addr;
        void               *video_dev;
+       struct xc2028_ctrl *ctrl;
        int                (*callback) (void *dev, int command, int arg);
 };
 
@@ -34,14 +48,15 @@ struct xc2028_config {
 #define XC2028_RESET_CLK       1
 
 #if defined(CONFIG_TUNER_XC2028) || (defined(CONFIG_TUNER_XC2028_MODULE) && defined(MODULE))
-void *xc2028_attach(struct dvb_frontend *fe, struct xc2028_config *cfg);
+extern struct dvb_frontend *xc2028_attach(struct dvb_frontend *fe,
+                                         struct xc2028_config *cfg);
 #else
-void *xc2028_attach(struct dvb_frontend *fe,
-                               struct xc2028_config *cfg)
+static inline struct dvb_frontend *xc2028_attach(struct dvb_frontend *fe,
+                                                struct xc2028_config *cfg)
 {
        printk(KERN_INFO "%s: not probed - driver disabled by Kconfig\n",
               __FUNCTION__);
-       return -EINVAL;
+       return NULL;
 }
 #endif