0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef AF9033_H
0010 #define AF9033_H
0011
0012
0013
0014
0015 struct af9033_config {
0016
0017
0018
0019
0020
0021 u32 clock;
0022
0023
0024
0025
0026 #define AF9033_ADC_MULTIPLIER_1X 0
0027 #define AF9033_ADC_MULTIPLIER_2X 1
0028 u8 adc_multiplier;
0029
0030
0031
0032
0033 #define AF9033_TUNER_TUA9001 0x27
0034 #define AF9033_TUNER_FC0011 0x28
0035 #define AF9033_TUNER_FC0012 0x2e
0036 #define AF9033_TUNER_MXL5007T 0xa0
0037 #define AF9033_TUNER_TDA18218 0xa1
0038 #define AF9033_TUNER_FC2580 0x32
0039
0040 #define AF9033_TUNER_IT9135_38 0x38
0041 #define AF9033_TUNER_IT9135_51 0x51
0042 #define AF9033_TUNER_IT9135_52 0x52
0043
0044 #define AF9033_TUNER_IT9135_60 0x60
0045 #define AF9033_TUNER_IT9135_61 0x61
0046 #define AF9033_TUNER_IT9135_62 0x62
0047 u8 tuner;
0048
0049
0050
0051
0052 #define AF9033_TS_MODE_USB 0
0053 #define AF9033_TS_MODE_PARALLEL 1
0054 #define AF9033_TS_MODE_SERIAL 2
0055 u8 ts_mode:2;
0056
0057
0058
0059
0060 bool spec_inv;
0061
0062
0063
0064
0065 bool dyn0_clk;
0066
0067
0068
0069
0070 struct af9033_ops *ops;
0071
0072
0073
0074
0075
0076 struct dvb_frontend **fe;
0077
0078
0079
0080
0081
0082 struct regmap *regmap;
0083 };
0084
0085 struct af9033_ops {
0086 int (*pid_filter_ctrl)(struct dvb_frontend *fe, int onoff);
0087 int (*pid_filter)(struct dvb_frontend *fe, int index, u16 pid,
0088 int onoff);
0089 };
0090
0091 #endif