]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/media/video/tuner-xc2028.h
V4L/DVB (6431): Improve firmware format
[linux-2.6-omap-h63xx.git] / drivers / media / video / tuner-xc2028.h
index 34ff4cba131ac5313cd900957ffb171434291d49..f4856f07bd08a31e5e0e89934efda319cc61f21f 100644 (file)
@@ -4,11 +4,42 @@
  * This code is placed under the terms of the GNU General Public License v2
  */
 
+#ifndef __TUNER_XC2028_H__
+#define __TUNER_XC2028_H__
+
+#include "dvb_frontend.h"
+
+#define XC2028_DEFAULT_FIRMWARE "xc3028-v27.fw"
+
+enum xc2028_firm_type {
+       XC2028_FIRM_NORMAL,
+       XC2028_FIRM_MTS,
+};
+
+struct xc2028_ctrl {
+       enum xc2028_firm_type   type;
+       char                    *fname;
+};
+
 /* xc2028 commands for callback */
 #define XC2028_TUNER_RESET     0
 #define XC2028_RESET_CLK       1
 
-struct dvb_frontend;
-struct i2c_client;
+#if defined(CONFIG_TUNER_XC2028) || (defined(CONFIG_TUNER_XC2028_MODULE) && defined(MODULE))
+int xc2028_attach(struct dvb_frontend *fe, struct i2c_adapter* i2c_adap,
+                 u8 i2c_addr, struct device *dev, void *video_dev,
+                 int (*tuner_callback) (void *dev, int command,int arg));
+
+#else
+static inline int xc2028_attach(struct dvb_frontend *fe,
+                 struct i2c_adapter* i2c_adap,
+                 u8 i2c_addr, struct device *dev, void *video_dev,
+                 int (*tuner_callback) (void *dev, int command,int arg))
+{
+       printk(KERN_INFO "%s: not probed - driver disabled by Kconfig\n",
+              __FUNCTION__);
+       return -EINVAL;
+}
+#endif
 
-int xc2028_attach(struct i2c_client *c, struct dvb_frontend *fe);
+#endif /* __TUNER_XC2028_H__ */