mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-23 09:19:51 +00:00
V4L/DVB (5445): Added / corrected support for some ASUS hybrid boards
There are 2 new entries for p7131 boards and one correction for a board with LNA. Signed-off-by: Hartmut Hackmann <hartmut.hackmann@t-online.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
cf83ac433c
commit
e06cea4cb4
4 changed files with 111 additions and 2 deletions
|
@ -76,7 +76,7 @@
|
|||
75 -> AVerMedia AVerTVHD MCE A180 [1461:1044]
|
||||
76 -> SKNet MonsterTV Mobile [1131:4ee9]
|
||||
77 -> Pinnacle PCTV 40i/50i/110i (saa7133) [11bd:002e]
|
||||
78 -> ASUSTeK P7131 Dual [1043:4862,1043:4876]
|
||||
78 -> ASUSTeK P7131 Dual [1043:4862,1043:4857]
|
||||
79 -> Sedna/MuchTV PC TV Cardbus TV/Radio (ITO25 Rev:2B)
|
||||
80 -> ASUS Digimatrix TV [1043:0210]
|
||||
81 -> Philips Tiger reference design [1131:2018]
|
||||
|
@ -109,3 +109,5 @@
|
|||
108 -> Terratec Cinergy HT PCI [153b:1175]
|
||||
109 -> Philips Tiger - S Reference design
|
||||
110 -> Avermedia M102 [1461:f31e]
|
||||
111 -> ASUS P7131 4871 [1043:4871]
|
||||
112 -> ASUSTeK P7131 Dual LNA [1043:4876]
|
||||
|
|
|
@ -3351,6 +3351,62 @@ struct saa7134_board saa7134_boards[] = {
|
|||
.amux = LINE2,
|
||||
}},
|
||||
},
|
||||
[SAA7134_BOARD_ASUS_P7131_4871] = {
|
||||
.name = "ASUS P7131 4871",
|
||||
.audio_clock = 0x00187de7,
|
||||
.tuner_type = TUNER_PHILIPS_TDA8290,
|
||||
.radio_type = UNSET,
|
||||
.tuner_addr = ADDR_UNSET,
|
||||
.radio_addr = ADDR_UNSET,
|
||||
.tuner_config = 2,
|
||||
.mpeg = SAA7134_MPEG_DVB,
|
||||
.gpiomask = 0x0200000,
|
||||
.inputs = {{
|
||||
.name = name_tv,
|
||||
.vmux = 1,
|
||||
.amux = TV,
|
||||
.tv = 1,
|
||||
.gpio = 0x0200000,
|
||||
}},
|
||||
},
|
||||
[SAA7134_BOARD_ASUSTeK_P7131_DUAL_LNA] = {
|
||||
.name = "ASUSTeK P7131 Dual LNA",
|
||||
.audio_clock = 0x00187de7,
|
||||
.tuner_type = TUNER_PHILIPS_TDA8290,
|
||||
.radio_type = UNSET,
|
||||
.tuner_addr = ADDR_UNSET,
|
||||
.radio_addr = ADDR_UNSET,
|
||||
.tuner_config = 2,
|
||||
.gpiomask = 1 << 21,
|
||||
.mpeg = SAA7134_MPEG_DVB,
|
||||
.inputs = {{
|
||||
.name = name_tv,
|
||||
.vmux = 1,
|
||||
.amux = TV,
|
||||
.tv = 1,
|
||||
.gpio = 0x0000000,
|
||||
},{
|
||||
.name = name_comp1,
|
||||
.vmux = 3,
|
||||
.amux = LINE2,
|
||||
.gpio = 0x0200000,
|
||||
},{
|
||||
.name = name_comp2,
|
||||
.vmux = 0,
|
||||
.amux = LINE2,
|
||||
.gpio = 0x0200000,
|
||||
},{
|
||||
.name = name_svideo,
|
||||
.vmux = 8,
|
||||
.amux = LINE2,
|
||||
.gpio = 0x0200000,
|
||||
}},
|
||||
.radio = {
|
||||
.name = name_radio,
|
||||
.amux = TV,
|
||||
.gpio = 0x0200000,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
const unsigned int saa7134_bcount = ARRAY_SIZE(saa7134_boards);
|
||||
|
@ -3976,7 +4032,7 @@ struct pci_device_id saa7134_pci_tbl[] = {
|
|||
.device = PCI_DEVICE_ID_PHILIPS_SAA7133,
|
||||
.subvendor = 0x1043,
|
||||
.subdevice = 0x4876,
|
||||
.driver_data = SAA7134_BOARD_ASUSTeK_P7131_DUAL,
|
||||
.driver_data = SAA7134_BOARD_ASUSTeK_P7131_DUAL_LNA,
|
||||
},{
|
||||
.vendor = PCI_VENDOR_ID_PHILIPS,
|
||||
.device = PCI_DEVICE_ID_PHILIPS_SAA7133,
|
||||
|
@ -4031,6 +4087,18 @@ struct pci_device_id saa7134_pci_tbl[] = {
|
|||
.subvendor = 0x4E42, /* MSI */
|
||||
.subdevice = 0x0306, /* TV@nywhere DUO */
|
||||
.driver_data = SAA7134_BOARD_FLYDVBTDUO,
|
||||
},{
|
||||
.vendor = PCI_VENDOR_ID_PHILIPS,
|
||||
.device = PCI_DEVICE_ID_PHILIPS_SAA7133,
|
||||
.subvendor = 0x1043,
|
||||
.subdevice = 0x4871,
|
||||
.driver_data = SAA7134_BOARD_ASUS_P7131_4871,
|
||||
},{
|
||||
.vendor = PCI_VENDOR_ID_PHILIPS,
|
||||
.device = PCI_DEVICE_ID_PHILIPS_SAA7133,
|
||||
.subvendor = 0x1043,
|
||||
.subdevice = 0x4857,
|
||||
.driver_data = SAA7134_BOARD_ASUSTeK_P7131_DUAL,
|
||||
},{
|
||||
/* --- boards without eeprom + subsystem ID --- */
|
||||
.vendor = PCI_VENDOR_ID_PHILIPS,
|
||||
|
@ -4136,6 +4204,7 @@ int saa7134_board_init1(struct saa7134_dev *dev)
|
|||
case SAA7134_BOARD_SEDNA_PC_TV_CARDBUS:
|
||||
case SAA7134_BOARD_FLYDVBT_LR301:
|
||||
case SAA7134_BOARD_ASUSTeK_P7131_DUAL:
|
||||
case SAA7134_BOARD_ASUSTeK_P7131_DUAL_LNA:
|
||||
case SAA7134_BOARD_FLYDVBTDUO:
|
||||
case SAA7134_BOARD_PROTEUS_2309:
|
||||
case SAA7134_BOARD_AVERMEDIA_A16AR:
|
||||
|
@ -4359,6 +4428,7 @@ int saa7134_board_init2(struct saa7134_dev *dev)
|
|||
case SAA7134_BOARD_PINNACLE_PCTV_310i:
|
||||
case SAA7134_BOARD_TEVION_DVBT_220RF:
|
||||
case SAA7134_BOARD_ASUSTeK_P7131_DUAL:
|
||||
case SAA7134_BOARD_ASUSTeK_P7131_DUAL_LNA:
|
||||
case SAA7134_BOARD_MEDION_MD8800_QUADRO:
|
||||
case SAA7134_BOARD_HAUPPAUGE_HVR1110:
|
||||
/* this is a hybrid board, initialize to analog mode
|
||||
|
|
|
@ -858,6 +858,35 @@ static struct tda1004x_config md8800_dvbt_config = {
|
|||
.request_firmware = philips_tda1004x_request_firmware
|
||||
};
|
||||
|
||||
static struct tda1004x_config asus_p7131_4871_config = {
|
||||
.demod_address = 0x08,
|
||||
.invert = 1,
|
||||
.invert_oclk = 0,
|
||||
.xtal_freq = TDA10046_XTAL_16M,
|
||||
.agc_config = TDA10046_AGC_TDA827X,
|
||||
.gpio_config = TDA10046_GP01_I,
|
||||
.if_freq = TDA10046_FREQ_045,
|
||||
.i2c_gate = 0x4b,
|
||||
.tuner_address = 0x61,
|
||||
.tuner_config = 2,
|
||||
.antenna_switch= 2,
|
||||
.request_firmware = philips_tda1004x_request_firmware
|
||||
};
|
||||
|
||||
static struct tda1004x_config asus_p7131_dual_lna_config = {
|
||||
.demod_address = 0x08,
|
||||
.invert = 1,
|
||||
.invert_oclk = 0,
|
||||
.xtal_freq = TDA10046_XTAL_16M,
|
||||
.agc_config = TDA10046_AGC_TDA827X,
|
||||
.gpio_config = TDA10046_GP11_I,
|
||||
.if_freq = TDA10046_FREQ_045,
|
||||
.i2c_gate = 0x4b,
|
||||
.tuner_address = 0x61,
|
||||
.tuner_config = 2,
|
||||
.antenna_switch= 2,
|
||||
.request_firmware = philips_tda1004x_request_firmware
|
||||
};
|
||||
/* ------------------------------------------------------------------
|
||||
* special case: this card uses saa713x GPIO22 for the mode switch
|
||||
*/
|
||||
|
@ -1121,6 +1150,12 @@ static int dvb_init(struct saa7134_dev *dev)
|
|||
case SAA7134_BOARD_PHILIPS_TIGER_S:
|
||||
configure_tda827x_fe(dev, &philips_tiger_s_config);
|
||||
break;
|
||||
case SAA7134_BOARD_ASUS_P7131_4871:
|
||||
configure_tda827x_fe(dev, &asus_p7131_4871_config);
|
||||
break;
|
||||
case SAA7134_BOARD_ASUSTeK_P7131_DUAL_LNA:
|
||||
configure_tda827x_fe(dev, &asus_p7131_dual_lna_config);
|
||||
break;
|
||||
default:
|
||||
wprintk("Huh? unknown DVB card?\n");
|
||||
break;
|
||||
|
|
|
@ -233,6 +233,8 @@ struct saa7134_format {
|
|||
#define SAA7134_BOARD_CINERGY_HT_PCI 108
|
||||
#define SAA7134_BOARD_PHILIPS_TIGER_S 109
|
||||
#define SAA7134_BOARD_AVERMEDIA_M102 110
|
||||
#define SAA7134_BOARD_ASUS_P7131_4871 111
|
||||
#define SAA7134_BOARD_ASUSTeK_P7131_DUAL_LNA 112
|
||||
|
||||
#define SAA7134_MAXBOARDS 8
|
||||
#define SAA7134_INPUT_MAX 8
|
||||
|
|
Loading…
Reference in a new issue