diff options
author | Michael Shalayeff <mickey@cvs.openbsd.org> | 2005-02-24 20:23:40 +0000 |
---|---|---|
committer | Michael Shalayeff <mickey@cvs.openbsd.org> | 2005-02-24 20:23:40 +0000 |
commit | 7f34afc1b4b8a5d763fbfac2b313c65c1c93b13a (patch) | |
tree | ac992bbbe38f68b36e3d9ac1bba78b9e22214e70 /sys/dev/pci/bktr | |
parent | 1215b1671fb13e4cdcdd19d1d2afbc0213146e94 (diff) |
support zoltrix tv/fm; from jakemsr@ pr4096
Diffstat (limited to 'sys/dev/pci/bktr')
-rw-r--r-- | sys/dev/pci/bktr/bktr_card.c | 30 | ||||
-rw-r--r-- | sys/dev/pci/bktr/bktr_card.h | 5 |
2 files changed, 32 insertions, 3 deletions
diff --git a/sys/dev/pci/bktr/bktr_card.c b/sys/dev/pci/bktr/bktr_card.c index 55d0573adaa..7b91757df6a 100644 --- a/sys/dev/pci/bktr/bktr_card.c +++ b/sys/dev/pci/bktr/bktr_card.c @@ -1,4 +1,4 @@ -/* $OpenBSD: bktr_card.c,v 1.11 2005/02/17 18:07:36 jfb Exp $ */ +/* $OpenBSD: bktr_card.c,v 1.12 2005/02/24 20:23:39 mickey Exp $ */ /* $FreeBSD: src/sys/dev/bktr/bktr_card.c,v 1.16 2000/10/31 13:09:56 roger Exp $ */ /* @@ -379,6 +379,18 @@ static const struct CARDTYPE cards[] = { { 0x02, 0x00, 0x00, 0x00, 1 }, /* audio MUX values */ 0x18e0 }, /* GPIO mask */ + { CARD_ZOLTRIX_GENIE_FM, /* the card id */ + "Zoltrix Genie TV/FM", /* the 'name' */ + NULL, /* the tuner */ + 0, /* the tuner i2c address */ + 0, /* dbx is optional */ + 0, /* msp34xx is optional */ + 0, /* dpl3518a is optional */ + 0, /* EEProm type */ + 0, /* EEProm size */ + { 0xbc803f, 0xbcb03f, 0xbc903f, 0x0, 1 }, /* audio MUX values*/ + 0xbcf03f }, /* GPIO mask */ + }; struct bt848_card_sig bt848_card_signature[1]= { @@ -735,6 +747,17 @@ probeCard( bktr_ptr_t bktr, int verbose, int unit ) goto checkTuner; } + if (subsystem_vendor_id == PCI_VENDOR_ZOLTRIX) { + if (subsystem_id == PCI_PRODUCT_ZOLTRIX_GENIE_TV_FM) { + bktr->card = cards[ (card = CARD_ZOLTRIX_GENIE_FM) ]; + } else { + bktr->card = cards[ (card = CARD_ZOLTRIX) ]; + } + 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 " @@ -1150,6 +1173,11 @@ checkTuner: goto checkDBX; break; + case CARD_ZOLTRIX_GENIE_FM: + select_tuner( bktr, PHILIPS_FR1236_NTSC ); + goto checkDBX; + break; + case CARD_IO_BCTV3: select_tuner( bktr, ALPS_TSCH5 ); /* ALPS_TSCH6, in fact. */ goto checkDBX; diff --git a/sys/dev/pci/bktr/bktr_card.h b/sys/dev/pci/bktr/bktr_card.h index 10b3b6897a0..f1cd405dec6 100644 --- a/sys/dev/pci/bktr/bktr_card.h +++ b/sys/dev/pci/bktr/bktr_card.h @@ -1,4 +1,4 @@ -/* $OpenBSD: bktr_card.h,v 1.5 2004/10/15 08:59:32 jsg Exp $ */ +/* $OpenBSD: bktr_card.h,v 1.6 2005/02/24 20:23:39 mickey Exp $ */ /* $FreeBSD: src/sys/dev/bktr/bktr_card.h,v 1.4 2000/06/26 09:41:31 roger Exp $ */ /* @@ -80,7 +80,8 @@ #define CARD_TVWONDER 17 #define CARD_IO_BCTV3 18 #define CARD_AOPEN_VA1000 19 -#define Bt848_MAX_CARD 20 +#define CARD_ZOLTRIX_GENIE_FM 20 +#define Bt848_MAX_CARD 21 int signCard( bktr_ptr_t bktr, int offset, int count, u_char *sig ); |