📄 saa7134-cards.c
字号:
}}, }, [SAA7134_BOARD_AVERMEDIA_AVERTVHD_A180] = { /* Michael Krufky <mkrufky@m1k.net> * Uses Alps Electric TDHU2, containing NXT2004 ATSC Decoder * AFAIK, there is no analog demod, thus, * no support for analog television. */ .name = "AVerMedia AVerTVHD MCE A180", .audio_clock = 0x00187de7, .tuner_type = TUNER_ABSENT, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, .inputs = {{ .name = name_comp1, .vmux = 3, .amux = LINE2, },{ .name = name_svideo, .vmux = 8, .amux = LINE2, }}, }, [SAA7134_BOARD_MONSTERTV_MOBILE] = { .name = "SKNet MonsterTV Mobile", .audio_clock = 0x00187de7, .tuner_type = TUNER_PHILIPS_TDA8290, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .inputs = {{ .name = name_tv, .vmux = 1, .amux = TV, .tv = 1, },{ .name = name_comp1, .vmux = 3, .amux = LINE1, },{ .name = name_svideo, .vmux = 6, .amux = LINE1, }}, }, [SAA7134_BOARD_PINNACLE_PCTV_110i] = { .name = "Pinnacle PCTV 40i/50i/110i (saa7133)", .audio_clock = 0x00187de7, .tuner_type = TUNER_PHILIPS_TDA8290, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .gpiomask = 0x080200000, .inputs = {{ .name = name_tv, .vmux = 4, .amux = TV, .tv = 1, },{ .name = name_comp1, .vmux = 1, .amux = LINE2, },{ .name = name_comp2, .vmux = 0, .amux = LINE2, },{ .name = name_svideo, .vmux = 8, .amux = LINE2, }}, .radio = { .name = name_radio, .amux = LINE1, }, }, [SAA7134_BOARD_ASUSTeK_P7131_DUAL] = { .name = "ASUSTeK P7131 Dual", .audio_clock = 0x00187de7, .tuner_type = TUNER_PHILIPS_TDA8290, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .gpiomask = 1 << 21, .mpeg = SAA7134_MPEG_DVB, .inputs = {{ .name = name_tv, .vmux = 1, .amux = TV, .tv = 1, },{ .name = name_comp1, .vmux = 3, .amux = LINE2, },{ .name = name_svideo, .vmux = 8, .amux = LINE2, }}, .radio = { .name = name_radio, .amux = TV, .gpio = 0x0200000, }, }, [SAA7134_BOARD_SEDNA_PC_TV_CARDBUS] = { /* Paul Tom Zalac <pzalac@gmail.com> */ /* Pavel Mihaylov <bin@bash.info> */ .name = "Sedna/MuchTV PC TV Cardbus TV/Radio (ITO25 Rev:2B)", /* Sedna/MuchTV (OEM) Cardbus TV Tuner */ .audio_clock = 0x00187de7, .tuner_type = TUNER_PHILIPS_TDA8290, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .gpiomask = 0xe880c0, .inputs = {{ .name = name_tv, .vmux = 3, .amux = TV, .tv = 1, },{ .name = name_comp1, .vmux = 1, .amux = LINE1, },{ .name = name_svideo, .vmux = 6, .amux = LINE1, }}, .radio = { .name = name_radio, .amux = LINE2, }, }, [SAA7134_BOARD_ASUSTEK_DIGIMATRIX_TV] = { /* "Cyril Lacoux (Yack)" <clacoux@ifeelgood.org> */ .name = "ASUS Digimatrix TV", .audio_clock = 0x00200000, .tuner_type = TUNER_PHILIPS_FQ1216ME, .tda9887_conf = TDA9887_PRESENT, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .inputs = {{ .name = name_tv, .vmux = 1, .amux = TV, .tv = 1, },{ .name = name_comp1, .vmux = 3, .amux = LINE1, },{ .name = name_svideo, .vmux = 8, .amux = LINE1, }}, }, [SAA7134_BOARD_PHILIPS_TIGER] = { .name = "Philips Tiger reference design", .audio_clock = 0x00187de7, .tuner_type = TUNER_PHILIPS_TDA8290, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, .gpiomask = 1 << 21, .inputs = {{ .name = name_tv, .vmux = 1, .amux = TV, .tv = 1, },{ .name = name_comp1, .vmux = 3, .amux = LINE1, },{ .name = name_svideo, .vmux = 8, .amux = LINE1, }}, .radio = { .name = name_radio, .amux = TV, .gpio = 0x0200000, }, }, [SAA7134_BOARD_MSI_TVATANYWHERE_PLUS] = { .name = "MSI TV@Anywhere plus", .audio_clock = 0x00187de7, .tuner_type = TUNER_PHILIPS_TDA8290, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .inputs = {{ .name = name_tv, .vmux = 1, .amux = TV, .tv = 1, },{ .name = name_comp1, .vmux = 3, .amux = LINE1, },{ .name = name_svideo, .vmux = 0, .amux = LINE1, }}, .radio = { .name = name_radio, .amux = LINE1, }, }, [SAA7134_BOARD_CINERGY250PCI] = { /* remote-control does not work. The signal about a key press comes in via gpio, but the key code doesn't. Neither does it have an i2c remote control interface. */ .name = "Terratec Cinergy 250 PCI TV", .audio_clock = 0x00187de7, .tuner_type = TUNER_PHILIPS_TDA8290, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .gpiomask = 0x80200000, .inputs = {{ .name = name_tv, .vmux = 1, .amux = TV, .tv = 1, },{ .name = name_svideo, /* NOT tested */ .vmux = 8, .amux = LINE1, }}, .radio = { .name = name_radio, .amux = LINE1, .gpio = 0x0200000, }, }, [SAA7134_BOARD_FLYDVB_TRIO] = { /* LifeView LR319 FlyDVB Trio */ /* Peter Missel <peter.missel@onlinehome.de> */ .name = "LifeView FlyDVB Trio", .audio_clock = 0x00200000, .tuner_type = TUNER_PHILIPS_TDA8290, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .gpiomask = 0x00200000, .mpeg = SAA7134_MPEG_DVB, .inputs = {{ .name = name_tv, /* Analog broadcast/cable TV */ .vmux = 1, .amux = TV, .gpio = 0x200000, /* GPIO21=High for TV input */ .tv = 1, },{ .name = name_svideo, /* S-Video signal on S-Video input */ .vmux = 8, .amux = LINE2, },{ .name = name_comp1, /* Composite signal on S-Video input */ .vmux = 0, .amux = LINE2, },{ .name = name_comp2, /* Composite input */ .vmux = 3, .amux = LINE2, }}, .radio = { .name = name_radio, .amux = TV, .gpio = 0x000000, /* GPIO21=Low for FM radio antenna */ }, }, [SAA7134_BOARD_AVERMEDIA_777] = { .name = "AverTV DVB-T 777", .audio_clock = 0x00187de7, .tuner_type = TUNER_ABSENT, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, .inputs = {{ .name = name_comp1, .vmux = 1, .amux = LINE1, },{ .name = name_svideo, .vmux = 8, .amux = LINE1, }}, }, [SAA7134_BOARD_FLYDVBT_LR301] = { /* LifeView FlyDVB-T */ /* Giampiero Giancipoli <gianci@libero.it> */ .name = "LifeView FlyDVB-T / Genius VideoWonder DVB-T", .audio_clock = 0x00200000, .tuner_type = TUNER_ABSENT, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, .inputs = {{ .name = name_comp1, /* Composite input */ .vmux = 3, .amux = LINE2, },{ .name = name_svideo, /* S-Video signal on S-Video input */ .vmux = 8, .amux = LINE2, }}, }, [SAA7134_BOARD_ADS_DUO_CARDBUS_PTV331] = { .name = "ADS Instant TV Duo Cardbus PTV331", .audio_clock = 0x00200000, .tuner_type = TUNER_PHILIPS_TDA8290, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, .gpiomask = 0x00600000, /* Bit 21 0=Radio, Bit 22 0=TV */ .inputs = {{ .name = name_tv, .vmux = 1, .amux = TV, .tv = 1, .gpio = 0x00200000, }}, }, [SAA7134_BOARD_TEVION_DVBT_220RF] = { .name = "Tevion/KWorld DVB-T 220RF", .audio_clock = 0x00187de7, .tuner_type = TUNER_PHILIPS_TDA8290, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, .inputs = {{ .name = name_tv, .vmux = 1, .amux = TV, .tv = 1, },{ .name = name_comp1, .vmux = 3, .amux = LINE1, },{ .name = name_svideo, .vmux = 0, .amux = LINE1, }}, .radio = { .name = name_radio, .amux = LINE1, }, }, [SAA7134_BOARD_KWORLD_ATSC110] = { .name = "Kworld ATSC110", .audio_clock = 0x00187de7, .tuner_type = TUNER_PHILIPS_TUV1236D, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT, .mpeg = SAA7134_MPEG_DVB, .inputs = {{ .name = name_tv, .vmux = 1, .amux = TV, .tv = 1, },{ .name = name_comp1, .vmux = 3, .amux = LINE2, },{ .name = name_svideo, .vmux = 8, .amux = LINE2, }}, }, [SAA7134_BOARD_AVERMEDIA_A169_B] = { /* AVerMedia A169 */ /* Rickard Osser <ricky@osser.se> */ /* This card has two saa7134 chips on it, but only one of them is currently working. */ .name = "AVerMedia A169 B", .audio_clock = 0x02187de7, .tuner_type = TUNER_LG_TALN, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT, .gpiomask = 0x0a60000,#if 0 .inputs = {{ .name = name_tv, .vmux = 4, .amux = TV, .tv = 1, .gpio = 0x00a68300, },{ .name = name_comp1, .vmux = 3, .amux = LINE1, },{ .name = name_comp2, /* Composite SVIDEO (B/W if signal is carried with SVIDEO) */ .vmux = 1, .amux = LINE1, },{ .name = name_svideo, .vmux = 9, /* 9 is correct as S-VIDEO according to a169.inf! */ .amux = LINE1, }}, .radio = { .name = name_radio, .amux = LINE2, .gpio = 0x00a68300, },#endif }, [SAA7134_BOARD_AVERMEDIA_A169_B1] = { /* AVerMedia A169 */ /* Rickard Osser <ricky@osser.se> */ .name = "AVerMedia A169 B1", .audio_clock = 0x02187de7, .tuner_type = TUNER_LG_TALN, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT, .gpiomask = 0xca60000, .inputs = {{ .name = name_tv, .vmux = 4, .amux = TV, .tv = 1, .gpio = 0x04a61000,#if 0 },{ .name = name_comp1, .vmux = 3, .amux = LINE1,#endif },{ .name = name_comp2, /* Composite SVIDEO (B/W if signal is carried with SVIDEO) */ .vmux = 1, .amux = LINE2, },{ .name = name_svideo, .vmux = 9, /* 9 is correct as S-VIDEO1 according to a169.inf! */ .amux = LINE1, }},#if 0 .radio = { .name = name_radio, .amux = LINE2, .gpio = 0x0ca61000, },#endif }, [SAA7134_BOARD_MD7134_BRIDGE_2] = { /* This card has two saa7134 chips on it, but only one of them is currently working. The programming for the primary decoder is in SAA7134_BOARD_MD7134 */ .name = "Medion 7134 Bridge #2", .audio_clock = 0x00187de7, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, }, [SAA7134_BOARD_FLYDVBT_HYBRID_CARDBUS] = { .name = "LifeView FlyDVB-T Hybrid Cardbus", .audio_clock = 0x00200000, .tuner_type = TUNER_PHILIPS_TDA8290, .radio_type = UNSET, .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, .gpiomask = 0x00600000, /* Bit 21 0=Radio, Bit 22 0=TV */ .inputs = {{ .name = name_tv, .vmux = 1, .amux = TV, .gpio = 0x200000, /* GPIO21=High for TV input */ .tv = 1, },{ .name = name_svideo, /* S-Video signal on S-Video input */ .vmux = 8, .amux = LINE2, },{ .name = name_comp1, /* Composite signal on S-Video input */ .vmux = 0, .amux = LINE2, },{ .name = name_comp2, /* Composite input */ .vmux = 3, .amux = LINE2, }}, .radio = { .name = name_radio, .amux = TV, .gpio = 0x000000, /* GPIO21=Low for FM radio antenna */ }, },};const unsigned int saa7134_bcount = ARRAY_SIZE(saa7134_boards);/* ------------------------------------------------------------------ *//* PCI ids + subsystem IDs */struct pci_device_id saa7134_pci_tbl[] = { { .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7134, .subvendor = PCI_VENDOR_ID_PHILIPS, .subdevice = 0x2001, .driver_data = SAA7134_BOARD_PROTEUS_PRO, },{ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7133, .subvendor = PCI_VENDOR_ID_PHILIPS, .subdevice = 0x2001, .driver_data = SAA7134_BOARD_PROTEUS_PRO, },{ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7134, .subvendor = PCI_VENDOR_ID_PHILIPS, .subdevice = 0x6752, .driver_data = SAA7134_BOARD_EMPRESS, },{ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7134, .subvendor = 0x1131, .subdevice = 0x4e85, .driver_data = SAA7134_BOARD_MONSTERTV, },{ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7134, .subvendor = 0x153b, .subdevice = 0x1142, .driver_data = SAA7134_BOARD_CINERGY400, },{ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7134, .subvendor = 0x153b, .subdevice = 0x1143, .driver_data = SAA7134_BOARD_CINERGY600, },{ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7134, .subvendor = 0x153b, .subdevice = 0x1158, .driver_data = SAA7134_BOARD_CINERGY600_MK3, },{ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7133, .subvendor = 0x153b, .subdevice = 0x1162, .driver_data = SAA7134_BOARD_CINERGY400_CARDBUS, },{ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7134, .subvendor = 0x5168, .subdevice = 0x0138, .driver_data = SAA7134_BOARD_FLYVIDEO3000, },{ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7134, .subvendor = 0x4e42, /* "Typhoon PCI Capture TV Card" Art.No. 50673 */ .subdevice = 0x0138, .driver_data = SAA7134_BOARD_FLYVIDEO3000, },{ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_DEVICE_ID_PHILIPS_SAA7130, .subvendor = 0x5168, .subdevice = 0x0138, .driver_data = SAA7134_BOARD_FLYVIDEO2000, },{ .vendor = PCI_VENDOR_ID_PHILIPS, .device = PCI_D
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -