aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/saa7164/saa7164-cards.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/video/saa7164/saa7164-cards.c')
-rw-r--r--drivers/media/video/saa7164/saa7164-cards.c128
1 files changed, 128 insertions, 0 deletions
diff --git a/drivers/media/video/saa7164/saa7164-cards.c b/drivers/media/video/saa7164/saa7164-cards.c
index 69822a4e7275..971591d6450f 100644
--- a/drivers/media/video/saa7164/saa7164-cards.c
+++ b/drivers/media/video/saa7164/saa7164-cards.c
@@ -203,6 +203,66 @@ struct saa7164_board saa7164_boards[] = {
203 .i2c_reg_len = REGLEN_8bit, 203 .i2c_reg_len = REGLEN_8bit,
204 } }, 204 } },
205 }, 205 },
206 [SAA7164_BOARD_HAUPPAUGE_HVR2200_4] = {
207 .name = "Hauppauge WinTV-HVR2200",
208 .porta = SAA7164_MPEG_DVB,
209 .portb = SAA7164_MPEG_DVB,
210 .portc = SAA7164_MPEG_ENCODER,
211 .portd = SAA7164_MPEG_ENCODER,
212 .porte = SAA7164_MPEG_VBI,
213 .portf = SAA7164_MPEG_VBI,
214 .chiprev = SAA7164_CHIP_REV3,
215 .unit = {{
216 .id = 0x1d,
217 .type = SAA7164_UNIT_EEPROM,
218 .name = "4K EEPROM",
219 .i2c_bus_nr = SAA7164_I2C_BUS_0,
220 .i2c_bus_addr = 0xa0 >> 1,
221 .i2c_reg_len = REGLEN_8bit,
222 }, {
223 .id = 0x04,
224 .type = SAA7164_UNIT_TUNER,
225 .name = "TDA18271-1",
226 .i2c_bus_nr = SAA7164_I2C_BUS_1,
227 .i2c_bus_addr = 0xc0 >> 1,
228 .i2c_reg_len = REGLEN_8bit,
229 }, {
230 .id = 0x05,
231 .type = SAA7164_UNIT_ANALOG_DEMODULATOR,
232 .name = "TDA8290-1",
233 .i2c_bus_nr = SAA7164_I2C_BUS_1,
234 .i2c_bus_addr = 0x84 >> 1,
235 .i2c_reg_len = REGLEN_8bit,
236 }, {
237 .id = 0x1b,
238 .type = SAA7164_UNIT_TUNER,
239 .name = "TDA18271-2",
240 .i2c_bus_nr = SAA7164_I2C_BUS_2,
241 .i2c_bus_addr = 0xc0 >> 1,
242 .i2c_reg_len = REGLEN_8bit,
243 }, {
244 .id = 0x1c,
245 .type = SAA7164_UNIT_ANALOG_DEMODULATOR,
246 .name = "TDA8290-2",
247 .i2c_bus_nr = SAA7164_I2C_BUS_2,
248 .i2c_bus_addr = 0x84 >> 1,
249 .i2c_reg_len = REGLEN_8bit,
250 }, {
251 .id = 0x1e,
252 .type = SAA7164_UNIT_DIGITAL_DEMODULATOR,
253 .name = "TDA10048-1",
254 .i2c_bus_nr = SAA7164_I2C_BUS_1,
255 .i2c_bus_addr = 0x10 >> 1,
256 .i2c_reg_len = REGLEN_8bit,
257 }, {
258 .id = 0x1f,
259 .type = SAA7164_UNIT_DIGITAL_DEMODULATOR,
260 .name = "TDA10048-2",
261 .i2c_bus_nr = SAA7164_I2C_BUS_2,
262 .i2c_bus_addr = 0x12 >> 1,
263 .i2c_reg_len = REGLEN_8bit,
264 } },
265 },
206 [SAA7164_BOARD_HAUPPAUGE_HVR2250] = { 266 [SAA7164_BOARD_HAUPPAUGE_HVR2250] = {
207 .name = "Hauppauge WinTV-HVR2250", 267 .name = "Hauppauge WinTV-HVR2250",
208 .porta = SAA7164_MPEG_DVB, 268 .porta = SAA7164_MPEG_DVB,
@@ -387,6 +447,62 @@ struct saa7164_board saa7164_boards[] = {
387 .i2c_reg_len = REGLEN_8bit, 447 .i2c_reg_len = REGLEN_8bit,
388 } }, 448 } },
389 }, 449 },
450 [SAA7164_BOARD_HAUPPAUGE_HVR2200_5] = {
451 .name = "Hauppauge WinTV-HVR2200",
452 .porta = SAA7164_MPEG_DVB,
453 .portb = SAA7164_MPEG_DVB,
454 .chiprev = SAA7164_CHIP_REV3,
455 .unit = {{
456 .id = 0x23,
457 .type = SAA7164_UNIT_EEPROM,
458 .name = "4K EEPROM",
459 .i2c_bus_nr = SAA7164_I2C_BUS_0,
460 .i2c_bus_addr = 0xa0 >> 1,
461 .i2c_reg_len = REGLEN_8bit,
462 }, {
463 .id = 0x04,
464 .type = SAA7164_UNIT_TUNER,
465 .name = "TDA18271-1",
466 .i2c_bus_nr = SAA7164_I2C_BUS_1,
467 .i2c_bus_addr = 0xc0 >> 1,
468 .i2c_reg_len = REGLEN_8bit,
469 }, {
470 .id = 0x05,
471 .type = SAA7164_UNIT_ANALOG_DEMODULATOR,
472 .name = "TDA8290-1",
473 .i2c_bus_nr = SAA7164_I2C_BUS_1,
474 .i2c_bus_addr = 0x84 >> 1,
475 .i2c_reg_len = REGLEN_8bit,
476 }, {
477 .id = 0x21,
478 .type = SAA7164_UNIT_TUNER,
479 .name = "TDA18271-2",
480 .i2c_bus_nr = SAA7164_I2C_BUS_2,
481 .i2c_bus_addr = 0xc0 >> 1,
482 .i2c_reg_len = REGLEN_8bit,
483 }, {
484 .id = 0x22,
485 .type = SAA7164_UNIT_ANALOG_DEMODULATOR,
486 .name = "TDA8290-2",
487 .i2c_bus_nr = SAA7164_I2C_BUS_2,
488 .i2c_bus_addr = 0x84 >> 1,
489 .i2c_reg_len = REGLEN_8bit,
490 }, {
491 .id = 0x24,
492 .type = SAA7164_UNIT_DIGITAL_DEMODULATOR,
493 .name = "TDA10048-1",
494 .i2c_bus_nr = SAA7164_I2C_BUS_1,
495 .i2c_bus_addr = 0x10 >> 1,
496 .i2c_reg_len = REGLEN_8bit,
497 }, {
498 .id = 0x25,
499 .type = SAA7164_UNIT_DIGITAL_DEMODULATOR,
500 .name = "TDA10048-2",
501 .i2c_bus_nr = SAA7164_I2C_BUS_2,
502 .i2c_bus_addr = 0x12 >> 1,
503 .i2c_reg_len = REGLEN_8bit,
504 } },
505 },
390}; 506};
391const unsigned int saa7164_bcount = ARRAY_SIZE(saa7164_boards); 507const unsigned int saa7164_bcount = ARRAY_SIZE(saa7164_boards);
392 508
@@ -426,6 +542,14 @@ struct saa7164_subid saa7164_subids[] = {
426 .subvendor = 0x0070, 542 .subvendor = 0x0070,
427 .subdevice = 0x8851, 543 .subdevice = 0x8851,
428 .card = SAA7164_BOARD_HAUPPAUGE_HVR2250_2, 544 .card = SAA7164_BOARD_HAUPPAUGE_HVR2250_2,
545 }, {
546 .subvendor = 0x0070,
547 .subdevice = 0x8940,
548 .card = SAA7164_BOARD_HAUPPAUGE_HVR2200_4,
549 }, {
550 .subvendor = 0x0070,
551 .subdevice = 0x8953,
552 .card = SAA7164_BOARD_HAUPPAUGE_HVR2200_5,
429 }, 553 },
430}; 554};
431const unsigned int saa7164_idcount = ARRAY_SIZE(saa7164_subids); 555const unsigned int saa7164_idcount = ARRAY_SIZE(saa7164_subids);
@@ -469,6 +593,8 @@ void saa7164_gpio_setup(struct saa7164_dev *dev)
469 case SAA7164_BOARD_HAUPPAUGE_HVR2200: 593 case SAA7164_BOARD_HAUPPAUGE_HVR2200:
470 case SAA7164_BOARD_HAUPPAUGE_HVR2200_2: 594 case SAA7164_BOARD_HAUPPAUGE_HVR2200_2:
471 case SAA7164_BOARD_HAUPPAUGE_HVR2200_3: 595 case SAA7164_BOARD_HAUPPAUGE_HVR2200_3:
596 case SAA7164_BOARD_HAUPPAUGE_HVR2200_4:
597 case SAA7164_BOARD_HAUPPAUGE_HVR2200_5:
472 case SAA7164_BOARD_HAUPPAUGE_HVR2250: 598 case SAA7164_BOARD_HAUPPAUGE_HVR2250:
473 case SAA7164_BOARD_HAUPPAUGE_HVR2250_2: 599 case SAA7164_BOARD_HAUPPAUGE_HVR2250_2:
474 case SAA7164_BOARD_HAUPPAUGE_HVR2250_3: 600 case SAA7164_BOARD_HAUPPAUGE_HVR2250_3:
@@ -549,6 +675,8 @@ void saa7164_card_setup(struct saa7164_dev *dev)
549 case SAA7164_BOARD_HAUPPAUGE_HVR2200: 675 case SAA7164_BOARD_HAUPPAUGE_HVR2200:
550 case SAA7164_BOARD_HAUPPAUGE_HVR2200_2: 676 case SAA7164_BOARD_HAUPPAUGE_HVR2200_2:
551 case SAA7164_BOARD_HAUPPAUGE_HVR2200_3: 677 case SAA7164_BOARD_HAUPPAUGE_HVR2200_3:
678 case SAA7164_BOARD_HAUPPAUGE_HVR2200_4:
679 case SAA7164_BOARD_HAUPPAUGE_HVR2200_5:
552 case SAA7164_BOARD_HAUPPAUGE_HVR2250: 680 case SAA7164_BOARD_HAUPPAUGE_HVR2250:
553 case SAA7164_BOARD_HAUPPAUGE_HVR2250_2: 681 case SAA7164_BOARD_HAUPPAUGE_HVR2250_2:
554 case SAA7164_BOARD_HAUPPAUGE_HVR2250_3: 682 case SAA7164_BOARD_HAUPPAUGE_HVR2250_3: