diff options
-rw-r--r-- | Documentation/video4linux/CARDLIST.saa7134 | 1 | ||||
-rw-r--r-- | drivers/media/video/saa7134/saa7134-cards.c | 35 | ||||
-rw-r--r-- | drivers/media/video/saa7134/saa7134.h | 1 |
3 files changed, 36 insertions, 1 deletions
diff --git a/Documentation/video4linux/CARDLIST.saa7134 b/Documentation/video4linux/CARDLIST.saa7134 index f18533f28e04..51f8a3fd66dc 100644 --- a/Documentation/video4linux/CARDLIST.saa7134 +++ b/Documentation/video4linux/CARDLIST.saa7134 | |||
@@ -108,3 +108,4 @@ | |||
108 | 107 -> Encore ENLTV-FM [1131:230f] | 108 | 107 -> Encore ENLTV-FM [1131:230f] |
109 | 108 -> Terratec Cinergy HT PCI [153b:1175] | 109 | 108 -> Terratec Cinergy HT PCI [153b:1175] |
110 | 109 -> Philips Tiger - S Reference design | 110 | 109 -> Philips Tiger - S Reference design |
111 | 110 -> Avermedia M102 [1461:f31e] | ||
diff --git a/drivers/media/video/saa7134/saa7134-cards.c b/drivers/media/video/saa7134/saa7134-cards.c index 87a8a68efc5c..23cd5f6bed17 100644 --- a/drivers/media/video/saa7134/saa7134-cards.c +++ b/drivers/media/video/saa7134/saa7134-cards.c | |||
@@ -3328,6 +3328,29 @@ struct saa7134_board saa7134_boards[] = { | |||
3328 | .gpio = 0x0200000, | 3328 | .gpio = 0x0200000, |
3329 | }, | 3329 | }, |
3330 | }, | 3330 | }, |
3331 | [SAA7134_BOARD_AVERMEDIA_M102] = { | ||
3332 | .name = "Avermedia M102", | ||
3333 | .audio_clock = 0x00187de7, | ||
3334 | .tuner_type = TUNER_PHILIPS_TDA8290, | ||
3335 | .radio_type = UNSET, | ||
3336 | .tuner_addr = ADDR_UNSET, | ||
3337 | .radio_addr = ADDR_UNSET, | ||
3338 | .gpiomask = 1<<21, | ||
3339 | .inputs = {{ | ||
3340 | .name = name_tv, | ||
3341 | .vmux = 1, | ||
3342 | .amux = TV, | ||
3343 | .tv = 1, | ||
3344 | },{ | ||
3345 | .name = name_comp1, | ||
3346 | .vmux = 0, | ||
3347 | .amux = LINE2, | ||
3348 | },{ | ||
3349 | .name = name_svideo, | ||
3350 | .vmux = 6, | ||
3351 | .amux = LINE2, | ||
3352 | }}, | ||
3353 | }, | ||
3331 | }; | 3354 | }; |
3332 | 3355 | ||
3333 | const unsigned int saa7134_bcount = ARRAY_SIZE(saa7134_boards); | 3356 | const unsigned int saa7134_bcount = ARRAY_SIZE(saa7134_boards); |
@@ -3997,6 +4020,12 @@ struct pci_device_id saa7134_pci_tbl[] = { | |||
3997 | .subdevice = 0x1175, | 4020 | .subdevice = 0x1175, |
3998 | .driver_data = SAA7134_BOARD_CINERGY_HT_PCI, | 4021 | .driver_data = SAA7134_BOARD_CINERGY_HT_PCI, |
3999 | },{ | 4022 | },{ |
4023 | .vendor = PCI_VENDOR_ID_PHILIPS, | ||
4024 | .device = PCI_DEVICE_ID_PHILIPS_SAA7133, | ||
4025 | .subvendor = 0x1461, /* Avermedia Technologies Inc */ | ||
4026 | .subdevice = 0xf31e, | ||
4027 | .driver_data = SAA7134_BOARD_AVERMEDIA_M102, | ||
4028 | },{ | ||
4000 | /* --- boards without eeprom + subsystem ID --- */ | 4029 | /* --- boards without eeprom + subsystem ID --- */ |
4001 | .vendor = PCI_VENDOR_ID_PHILIPS, | 4030 | .vendor = PCI_VENDOR_ID_PHILIPS, |
4002 | .device = PCI_DEVICE_ID_PHILIPS_SAA7134, | 4031 | .device = PCI_DEVICE_ID_PHILIPS_SAA7134, |
@@ -4010,7 +4039,6 @@ struct pci_device_id saa7134_pci_tbl[] = { | |||
4010 | .subdevice = 0, | 4039 | .subdevice = 0, |
4011 | .driver_data = SAA7134_BOARD_NOAUTO, | 4040 | .driver_data = SAA7134_BOARD_NOAUTO, |
4012 | },{ | 4041 | },{ |
4013 | |||
4014 | /* --- default catch --- */ | 4042 | /* --- default catch --- */ |
4015 | .vendor = PCI_VENDOR_ID_PHILIPS, | 4043 | .vendor = PCI_VENDOR_ID_PHILIPS, |
4016 | .device = PCI_DEVICE_ID_PHILIPS_SAA7130, | 4044 | .device = PCI_DEVICE_ID_PHILIPS_SAA7130, |
@@ -4176,6 +4204,11 @@ int saa7134_board_init1(struct saa7134_dev *dev) | |||
4176 | "%s: Dual decoder functionality is disabled for now, use the other chip.\n", | 4204 | "%s: Dual decoder functionality is disabled for now, use the other chip.\n", |
4177 | dev->name,card(dev).name,dev->name,dev->name); | 4205 | dev->name,card(dev).name,dev->name,dev->name); |
4178 | break; | 4206 | break; |
4207 | case SAA7134_BOARD_AVERMEDIA_M102: | ||
4208 | /* enable tuner */ | ||
4209 | saa_andorl(SAA7134_GPIO_GPMODE0 >> 2, 0x8c040007, 0x8c040007); | ||
4210 | saa_andorl(SAA7134_GPIO_GPSTATUS0 >> 2, 0x0c0007cd, 0x0c0007cd); | ||
4211 | break; | ||
4179 | } | 4212 | } |
4180 | return 0; | 4213 | return 0; |
4181 | } | 4214 | } |
diff --git a/drivers/media/video/saa7134/saa7134.h b/drivers/media/video/saa7134/saa7134.h index 07376da7ebd5..290e7e55c519 100644 --- a/drivers/media/video/saa7134/saa7134.h +++ b/drivers/media/video/saa7134/saa7134.h | |||
@@ -232,6 +232,7 @@ struct saa7134_format { | |||
232 | #define SAA7134_BOARD_ENCORE_ENLTV_FM 107 | 232 | #define SAA7134_BOARD_ENCORE_ENLTV_FM 107 |
233 | #define SAA7134_BOARD_CINERGY_HT_PCI 108 | 233 | #define SAA7134_BOARD_CINERGY_HT_PCI 108 |
234 | #define SAA7134_BOARD_PHILIPS_TIGER_S 109 | 234 | #define SAA7134_BOARD_PHILIPS_TIGER_S 109 |
235 | #define SAA7134_BOARD_AVERMEDIA_M102 110 | ||
235 | 236 | ||
236 | #define SAA7134_MAXBOARDS 8 | 237 | #define SAA7134_MAXBOARDS 8 |
237 | #define SAA7134_INPUT_MAX 8 | 238 | #define SAA7134_INPUT_MAX 8 |