kern/53383 : [bktr] [patch] adding Terratec TValue to bktr
driver
Simon Barner
barner at FreeBSD.org
Sat Nov 12 05:00:32 PST 2005
The following reply was made to PR kern/53383; it has been noted by GNATS.
From: Simon Barner <barner at FreeBSD.org>
To: bug-followup at FreeBSD.org, tawi at gruft.de
Cc:
Subject: Re: kern/53383 : [bktr] [patch] adding Terratec TValue to bktr driver
Date: Sat, 12 Nov 2005 13:23:47 +0100
Here is an updated version of the patch (against RELENG_6), which also
detecteds TerraTValue cards with subid 0x1134:
diff -ruN sys/dev/bktr.orig/bktr_card.c sys/dev/bktr/bktr_card.c
--- sys/dev/bktr.orig/bktr_card.c Sat Nov 12 12:19:40 2005
+++ sys/dev/bktr/bktr_card.c Sat Nov 12 12:29:01 2005
@@ -391,6 +391,18 @@
{ 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 */
};
struct bt848_card_sig bt848_card_signature[1]= {
@@ -582,6 +594,7 @@
#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 +608,8 @@
#define PCI_VENDOR_PINNACLE_NEW 0x11BD
#define MODEL_IODATA_GV_BCTV3_PCI 0x4020
+#define MODEL_TERRATVALUE_1118 0x1118
+#define MODEL_TERRATVALUE_1134 0x1134
void
probeCard( bktr_ptr_t bktr, int verbose, int unit )
@@ -739,6 +754,15 @@
goto checkTuner;
}
+ if ((subsystem_vendor_id == PCI_VENDOR_TERRATEC) &&
+ (subsystem_id == MODEL_TERRATVALUE_1134 ||
+ subsystem_id == MODEL_TERRATVALUE_1118)) {
+ 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",
@@ -1162,6 +1186,11 @@
case CARD_IO_BCTV3:
select_tuner( bktr, ALPS_TSCH5 ); /* ALPS_TSCH6, in fact. */
+ goto checkDBX;
+ break;
+
+ case CARD_TERRATVALUE:
+ select_tuner( bktr, PHILIPS_PAL); /* Phlips PAL tuner */
goto checkDBX;
break;
diff -ruN sys/dev/bktr.orig/bktr_card.h sys/dev/bktr/bktr_card.h
--- sys/dev/bktr.orig/bktr_card.h Sat Nov 12 12:19:40 2005
+++ sys/dev/bktr/bktr_card.h Sat Nov 12 12:21:01 2005
@@ -80,8 +80,9 @@
#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 Bt848_MAX_CARD 22
+
#define CARD_IO_GV CARD_IO_BCTV2
int signCard( bktr_ptr_t bktr, int offset, int count, u_char* sig );
More information about the freebsd-bugs
mailing list