Add some cards:

- several TerraTec TValue [1]
 - PixelView PlayTV Pro REV-4C [2]

In case you have the PixelView card, please tell us the "pciconf -v -l"
output on multimedia@FreeBSD.org if it works. There are revisions out there
which may not work and we need to know which ones work.

PR:		53383 [1], 76002 [2]
Submitted by:	Tanja Wittke <tawi@gruft.de> [1], barner [1],
		Dan Angelescu <mrhsaacdoh@yahoo.com> [2]
MFC after:	2 months
This commit is contained in:
Alexander Leidinger 2005-11-13 13:26:37 +00:00
parent b49a9e5bab
commit 96ca607e80
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=152375
4 changed files with 67 additions and 5 deletions

View File

@ -391,6 +391,30 @@ static const struct CARDTYPE cards[] = {
{ 0x20000, 0x80000, 0, 0xa8000, 1 }, /* audio MUX values */
0xAA0000 }, /* GPIO mask */
{ CARD_TERRATVALUE, /* the card id */
"TerraTec TValue", /* the 'name' */
NULL, /* the tuner */
0, /* the tuner i2c address */
0, /* dbx is optional */
0,
0,
0, /* EEProm type */
0, /* EEProm size */
/* Tuner, Extern, Intern, Mute, Enabled */
{ 0x500, 0x900, 0x300, 0x900, 1 }, /* audio MUX values */
0xffff00 }, /* GPIO mask */
{ CARD_PIXELVIEW_PLAYTV_PRO_REV_4C, /* the card id */
"PixelView PlayTV Pro REV-4C ", /* the 'name' */
NULL, /* the tuner */
0, /* the tuner i2c address */
0, /* dbx is optional */
0,
0,
0, /* EEProm type */
0, /* EEProm size */
{ 0x01, 0x04, 0x01, 0x03, 1 }, /* audio MUX values */
0x00ffffff },
};
struct bt848_card_sig bt848_card_signature[1]= {
@ -582,6 +606,7 @@ static int locate_eeprom_address( bktr_ptr_t bktr) {
#define PCI_VENDOR_AVERMEDIA 0x1461
#define PCI_VENDOR_STB 0x10B4
#define PCI_VENDOR_ASKEY 0x144F
#define PCI_VENDOR_TERRATEC 0x153B
#endif
/* Following not confirmed with http://members.hyperlink.net.au/~chart,
so not added to NetBSD's pcidevs */
@ -595,6 +620,11 @@ static int locate_eeprom_address( bktr_ptr_t bktr) {
#define PCI_VENDOR_PINNACLE_NEW 0x11BD
#define MODEL_IODATA_GV_BCTV3_PCI 0x4020
#define MODEL_TERRATVALUE_1117 0x1117
#define MODEL_TERRATVALUE_1118 0x1118
#define MODEL_TERRATVALUE_1119 0x1119
#define MODEL_TERRATVALUE_111A 0x111a
#define MODEL_TERRATVALUE_1134 0x1134
void
probeCard( bktr_ptr_t bktr, int verbose, int unit )
@ -739,6 +769,20 @@ probeCard( bktr_ptr_t bktr, int verbose, int unit )
goto checkTuner;
}
if (subsystem_vendor_id == PCI_VENDOR_TERRATEC) {
switch (subsystem_id) {
case MODEL_TERRATVALUE_1117:
case MODEL_TERRATVALUE_1118:
case MODEL_TERRATVALUE_1119:
case MODEL_TERRATVALUE_111A:
case MODEL_TERRATVALUE_1134:
bktr->card = cards[ (card = CARD_TERRATVALUE) ];
bktr->card.eepromAddr = eeprom_i2c_address;
bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE);
goto checkTuner;
}
}
/* Vendor is unknown. We will use the standard probe code */
/* which may not give best results */
printf("%s: Warning - card vendor 0x%04x (model 0x%04x) unknown.\n",
@ -1165,6 +1209,11 @@ probeCard( bktr_ptr_t bktr, int verbose, int unit )
goto checkDBX;
break;
case CARD_TERRATVALUE:
select_tuner( bktr, PHILIPS_PAL); /* Phlips PAL tuner */
goto checkDBX;
break;
} /* end switch(card) */

View File

@ -80,8 +80,10 @@
#define CARD_AOPEN_VA1000 18
#define CARD_PINNACLE_PCTV_RAVE 19
#define CARD_PIXELVIEW_PLAYTV_PAK 20
#define Bt848_MAX_CARD 21
#define CARD_TERRATVALUE 21
#define CARD_PIXELVIEW_PLAYTV_PRO_REV_4C 22
#define Bt848_MAX_CARD 23
#define CARD_IO_GV CARD_IO_BCTV2
int signCard( bktr_ptr_t bktr, int offset, int count, u_char* sig );

View File

@ -278,17 +278,27 @@ static const struct TUNER tuners[] = {
TSBH1_FCONTROL,
0x00 },
{ 0x00, 0x00 }, /* band-switch crosspoints */
{ 0x01, 0x02, 0x08, 0x00 } }, /* the band-switch values */
{ 0x01, 0x02, 0x08, 0x00 } }, /* the band-switch values */
/* MT2032 Microtune */
{ "MT2032", /* the 'name' */
TTYPE_PAL, /* input type */
TTYPE_PAL, /* input type */
{ TSA552x_SCONTROL, /* control byte for Tuner PLL */
TSA552x_SCONTROL,
TSA552x_SCONTROL,
0x00 },
{ 0x00, 0x00 }, /* band-switch crosspoints */
{ 0xa0, 0x90, 0x30, 0x00 } }, /* the band-switch values */
/* LG TPI8PSB12P PAL */
{ "LG TPI8PSB12P PAL", /* the 'name' */
TTYPE_PAL, /* input type */
{ TSA552x_SCONTROL, /* control byte for Tuner PLL */
TSA552x_SCONTROL,
TSA552x_SCONTROL,
0x00 },
{ 0x00, 0x00 }, /* band-switch crosspoints */
{ 0xa0, 0x90, 0x30, 0x8e } }, /* the band-switch values */
};

View File

@ -60,7 +60,8 @@
#define ALPS_TSCH5 12
#define ALPS_TSBH1 13
#define TUNER_MT2032 14
#define Bt848_MAX_TUNER 15
#define LG_TPI8PSB12P_PAL 15
#define Bt848_MAX_TUNER 16
/* experimental code for Automatic Frequency Control */
#define TUNER_AFC