Commit | Line | Data |
---|---|---|
6cb45879 MCC |
1 | /* tuner-xc2028 |
2 | * | |
3 | * Copyright (c) 2007 Mauro Carvalho Chehab (mchehab@infradead.org) | |
4 | * This code is placed under the terms of the GNU General Public License v2 | |
5 | */ | |
6 | ||
215b95ba MCC |
7 | #ifndef __TUNER_XC2028_H__ |
8 | #define __TUNER_XC2028_H__ | |
9 | ||
10 | #include "dvb_frontend.h" | |
11 | ||
de3fe21b MCC |
12 | #define XC2028_DEFAULT_FIRMWARE "xc3028-v27.fw" |
13 | ||
14 | enum xc2028_firm_type { | |
15 | XC2028_FIRM_NORMAL, | |
16 | XC2028_FIRM_MTS, | |
17 | }; | |
18 | ||
19 | struct xc2028_ctrl { | |
20 | enum xc2028_firm_type type; | |
21 | char *fname; | |
352fae1d | 22 | int max_len; |
de3fe21b MCC |
23 | }; |
24 | ||
6cb45879 MCC |
25 | /* xc2028 commands for callback */ |
26 | #define XC2028_TUNER_RESET 0 | |
27 | #define XC2028_RESET_CLK 1 | |
701672eb | 28 | |
215b95ba | 29 | #if defined(CONFIG_TUNER_XC2028) || (defined(CONFIG_TUNER_XC2028_MODULE) && defined(MODULE)) |
ab0b9fc6 | 30 | int xc2028_attach(struct dvb_frontend *fe, struct i2c_adapter *i2c_adap, |
215b95ba | 31 | u8 i2c_addr, struct device *dev, void *video_dev, |
ab0b9fc6 | 32 | int (*tuner_callback) (void *dev, int command, int arg)); |
215b95ba MCC |
33 | |
34 | #else | |
35 | static inline int xc2028_attach(struct dvb_frontend *fe, | |
ab0b9fc6 MCC |
36 | struct i2c_adapter *i2c_adap, |
37 | u8 i2c_addr, struct device *dev, | |
38 | void *video_dev, | |
39 | int (*tuner_callback) (void *dev, int command, | |
40 | int arg)) | |
215b95ba MCC |
41 | { |
42 | printk(KERN_INFO "%s: not probed - driver disabled by Kconfig\n", | |
43 | __FUNCTION__); | |
44 | return -EINVAL; | |
45 | } | |
46 | #endif | |
47 | ||
48 | #endif /* __TUNER_XC2028_H__ */ |