diff options
author | Michael Krufky <mkrufky@m1k.net> | 2005-11-09 00:35:32 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-11-09 10:56:03 -0500 |
commit | c0b11b914de27e0e82b5311cf9b498a1b008b591 (patch) | |
tree | 3eb9ff604ca727f5a86d3b592a01c528b99de454 /drivers/media/dvb/frontends | |
parent | f7b67195ea571b8540ac79daf27f5932ec40c098 (diff) |
[PATCH] dvb: Add support for Air2PC/AirStar 2 ATSC 3rd generation (HD5000)
Added support for Air2PC/AirStar 2 ATSC 3rd generation (HD5000)
Signed-off-by: Taylor Jacob <rtjacob@earthlink.net>
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
Cc: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/media/dvb/frontends')
-rw-r--r-- | drivers/media/dvb/frontends/dvb-pll.c | 2 | ||||
-rw-r--r-- | drivers/media/dvb/frontends/lgdt330x.c | 15 | ||||
-rw-r--r-- | drivers/media/dvb/frontends/lgdt330x.h | 4 |
3 files changed, 18 insertions, 3 deletions
diff --git a/drivers/media/dvb/frontends/dvb-pll.c b/drivers/media/dvb/frontends/dvb-pll.c index 536c35d969b7..6668839f9474 100644 --- a/drivers/media/dvb/frontends/dvb-pll.c +++ b/drivers/media/dvb/frontends/dvb-pll.c | |||
@@ -226,7 +226,7 @@ struct dvb_pll_desc dvb_pll_tua6034 = { | |||
226 | EXPORT_SYMBOL(dvb_pll_tua6034); | 226 | EXPORT_SYMBOL(dvb_pll_tua6034); |
227 | 227 | ||
228 | /* Infineon TUA6034 | 228 | /* Infineon TUA6034 |
229 | * used in LG Innotek TDVS-H062F | 229 | * used in LG TDVS H061F and LG TDVS H062F |
230 | */ | 230 | */ |
231 | struct dvb_pll_desc dvb_pll_tdvs_tua6034 = { | 231 | struct dvb_pll_desc dvb_pll_tdvs_tua6034 = { |
232 | .name = "LG/Infineon TUA6034", | 232 | .name = "LG/Infineon TUA6034", |
diff --git a/drivers/media/dvb/frontends/lgdt330x.c b/drivers/media/dvb/frontends/lgdt330x.c index 145918877d2f..10fc4e7878af 100644 --- a/drivers/media/dvb/frontends/lgdt330x.c +++ b/drivers/media/dvb/frontends/lgdt330x.c | |||
@@ -27,6 +27,7 @@ | |||
27 | * DViCO FusionHDTV 3 Gold-T | 27 | * DViCO FusionHDTV 3 Gold-T |
28 | * DViCO FusionHDTV 5 Gold | 28 | * DViCO FusionHDTV 5 Gold |
29 | * DViCO FusionHDTV 5 Lite | 29 | * DViCO FusionHDTV 5 Lite |
30 | * Air2PC/AirStar 2 ATSC 3rd generation (HD5000) | ||
30 | * | 31 | * |
31 | * TODO: | 32 | * TODO: |
32 | * signal strength always returns 0. | 33 | * signal strength always returns 0. |
@@ -223,6 +224,11 @@ static int lgdt330x_init(struct dvb_frontend* fe) | |||
223 | 0x4c, 0x14 | 224 | 0x4c, 0x14 |
224 | }; | 225 | }; |
225 | 226 | ||
227 | static u8 flip_lgdt3303_init_data[] = { | ||
228 | 0x4c, 0x14, | ||
229 | 0x87, 0xf3 | ||
230 | }; | ||
231 | |||
226 | struct lgdt330x_state* state = fe->demodulator_priv; | 232 | struct lgdt330x_state* state = fe->demodulator_priv; |
227 | char *chip_name; | 233 | char *chip_name; |
228 | int err; | 234 | int err; |
@@ -235,8 +241,13 @@ static int lgdt330x_init(struct dvb_frontend* fe) | |||
235 | break; | 241 | break; |
236 | case LGDT3303: | 242 | case LGDT3303: |
237 | chip_name = "LGDT3303"; | 243 | chip_name = "LGDT3303"; |
238 | err = i2c_write_demod_bytes(state, lgdt3303_init_data, | 244 | if (state->config->clock_polarity_flip) { |
239 | sizeof(lgdt3303_init_data)); | 245 | err = i2c_write_demod_bytes(state, flip_lgdt3303_init_data, |
246 | sizeof(flip_lgdt3303_init_data)); | ||
247 | } else { | ||
248 | err = i2c_write_demod_bytes(state, lgdt3303_init_data, | ||
249 | sizeof(lgdt3303_init_data)); | ||
250 | } | ||
240 | break; | 251 | break; |
241 | default: | 252 | default: |
242 | chip_name = "undefined"; | 253 | chip_name = "undefined"; |
diff --git a/drivers/media/dvb/frontends/lgdt330x.h b/drivers/media/dvb/frontends/lgdt330x.h index e209ba1e47c5..2a6529cccf1a 100644 --- a/drivers/media/dvb/frontends/lgdt330x.h +++ b/drivers/media/dvb/frontends/lgdt330x.h | |||
@@ -47,6 +47,10 @@ struct lgdt330x_config | |||
47 | 47 | ||
48 | /* Need to set device param for start_dma */ | 48 | /* Need to set device param for start_dma */ |
49 | int (*set_ts_params)(struct dvb_frontend* fe, int is_punctured); | 49 | int (*set_ts_params)(struct dvb_frontend* fe, int is_punctured); |
50 | |||
51 | /* Flip the polarity of the mpeg data transfer clock using alternate init data | ||
52 | * This option applies ONLY to LGDT3303 - 0:disabled (default) 1:enabled */ | ||
53 | int clock_polarity_flip; | ||
50 | }; | 54 | }; |
51 | 55 | ||
52 | extern struct dvb_frontend* lgdt330x_attach(const struct lgdt330x_config* config, | 56 | extern struct dvb_frontend* lgdt330x_attach(const struct lgdt330x_config* config, |