diff options
author | Pedro Martelletto <pedro@cvs.openbsd.org> | 2007-01-08 08:29:38 +0000 |
---|---|---|
committer | Pedro Martelletto <pedro@cvs.openbsd.org> | 2007-01-08 08:29:38 +0000 |
commit | 68457c88ff35e4639e2a66967dbacafd74290ac7 (patch) | |
tree | 31b5d2be782c860cba65698df2b9ff1281c6c6ee /sys/dev/pci/bktr | |
parent | d47e7220ac5fe649e85b7a50276b11da1815944f (diff) |
Add support for Leadtek Winfast TV 2000 XP, from Tim Leslie
Okay robert@
Diffstat (limited to 'sys/dev/pci/bktr')
-rw-r--r-- | sys/dev/pci/bktr/bktr_card.c | 25 | ||||
-rw-r--r-- | sys/dev/pci/bktr/bktr_card.h | 5 | ||||
-rw-r--r-- | sys/dev/pci/bktr/bktr_tuner.c | 14 | ||||
-rw-r--r-- | sys/dev/pci/bktr/bktr_tuner.h | 5 |
4 files changed, 40 insertions, 9 deletions
diff --git a/sys/dev/pci/bktr/bktr_card.c b/sys/dev/pci/bktr/bktr_card.c index 7b91757df6a..f2e6654a481 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.12 2005/02/24 20:23:39 mickey Exp $ */ +/* $OpenBSD: bktr_card.c,v 1.13 2007/01/08 08:29:37 pedro Exp $ */ /* $FreeBSD: src/sys/dev/bktr/bktr_card.c,v 1.16 2000/10/31 13:09:56 roger Exp $ */ /* @@ -318,7 +318,7 @@ static const struct CARDTYPE cards[] = { 0xE00 }, /* GPIO mask */ { CARD_LEADTEK, /* the card id */ - "Leadtek Winfast TV 2000", /* the 'name' */ + "Leadtek WinFast TV 2000", /* the 'name' */ NULL, /* the tuner */ 0, 0, @@ -391,6 +391,17 @@ static const struct CARDTYPE cards[] = { { 0xbc803f, 0xbcb03f, 0xbc903f, 0x0, 1 }, /* audio MUX values*/ 0xbcf03f }, /* GPIO mask */ + { CARD_LEADTEK_XP, /* the card id */ + "Leadtek WinFast TV 2000 XP", /* 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 */ + { 0x122000, 0x1000, 0x620000, 0x0, 1 }, /* audio MUX values*/ + 0xb3300 }, /* GPIO mask */ }; struct bt848_card_sig bt848_card_signature[1]= { @@ -707,7 +718,10 @@ probeCard( bktr_ptr_t bktr, int verbose, int unit ) || (subsystem_vendor_id == PCI_VENDOR_LEADTEK_ALT) || (subsystem_vendor_id == PCI_VENDOR_LEADTEK_ALT_2) || (subsystem_vendor_id == PCI_VENDOR_LEADTEK_ALT_3)) { - bktr->card = cards[ (card = CARD_LEADTEK) ]; + if (subsystem_id == PCI_PRODUCT_LEADTEK_WINFAST_XP) + bktr->card = cards[ (card = CARD_LEADTEK_XP) ]; + else + bktr->card = cards[ (card = CARD_LEADTEK) ]; bktr->card.eepromAddr = eeprom_i2c_address; bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE); goto checkTuner; @@ -1183,6 +1197,11 @@ checkTuner: goto checkDBX; break; + case CARD_LEADTEK_XP: + select_tuner( bktr, TIVISION_TVF5533 ); + goto checkDBX; + break; + } /* end switch(card) */ diff --git a/sys/dev/pci/bktr/bktr_card.h b/sys/dev/pci/bktr/bktr_card.h index f1cd405dec6..772664cf1b1 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.6 2005/02/24 20:23:39 mickey Exp $ */ +/* $OpenBSD: bktr_card.h,v 1.7 2007/01/08 08:29:37 pedro Exp $ */ /* $FreeBSD: src/sys/dev/bktr/bktr_card.h,v 1.4 2000/06/26 09:41:31 roger Exp $ */ /* @@ -81,7 +81,8 @@ #define CARD_IO_BCTV3 18 #define CARD_AOPEN_VA1000 19 #define CARD_ZOLTRIX_GENIE_FM 20 -#define Bt848_MAX_CARD 21 +#define CARD_LEADTEK_XP 21 +#define Bt848_MAX_CARD 22 int signCard( bktr_ptr_t bktr, int offset, int count, u_char *sig ); diff --git a/sys/dev/pci/bktr/bktr_tuner.c b/sys/dev/pci/bktr/bktr_tuner.c index c1d7b53e232..efbbea235e9 100644 --- a/sys/dev/pci/bktr/bktr_tuner.c +++ b/sys/dev/pci/bktr/bktr_tuner.c @@ -1,4 +1,4 @@ -/* $OpenBSD: bktr_tuner.c,v 1.4 2006/02/05 23:52:58 jakemsr Exp $ */ +/* $OpenBSD: bktr_tuner.c,v 1.5 2007/01/08 08:29:37 pedro Exp $ */ /* $FreeBSD: src/sys/dev/bktr/bktr_tuner.c,v 1.9 2000/10/19 07:33:28 roger Exp $ */ /* @@ -278,7 +278,17 @@ 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 */ + + /* Tivision TVF5533-MF NTSC */ + { "Tivision TVF5533-MF NTSC", /* the 'name' */ + TTYPE_NTSC, /* input 'type' */ + { TSBH1_FCONTROL, /* ctr byte for Tuner PLL */ + TSBH1_FCONTROL, + TSBH1_FCONTROL, + 0x00 }, + { 0x00, 0x00 }, /* band-switch crosspoints */ + { 0x01, 0x02, 0x04, 0x00 } }, /* the band-switch values */ }; diff --git a/sys/dev/pci/bktr/bktr_tuner.h b/sys/dev/pci/bktr/bktr_tuner.h index 5ca817d26e7..7e87d5bc20b 100644 --- a/sys/dev/pci/bktr/bktr_tuner.h +++ b/sys/dev/pci/bktr/bktr_tuner.h @@ -1,4 +1,4 @@ -/* $OpenBSD: bktr_tuner.h,v 1.1 2001/03/28 03:27:10 fgsch Exp $ */ +/* $OpenBSD: bktr_tuner.h,v 1.2 2007/01/08 08:29:37 pedro Exp $ */ /* $FreeBSD: src/sys/dev/bktr/bktr_tuner.h,v 1.1 1999/09/26 22:06:20 roger Exp $ */ /* @@ -60,7 +60,8 @@ #define PHILIPS_FR1236_SECAM 11 /* These have FM radio support */ #define ALPS_TSCH5 12 #define ALPS_TSBH1 13 -#define Bt848_MAX_TUNER 14 +#define TIVISION_TVF5533 14 +#define Bt848_MAX_TUNER 15 /* experimental code for Automatic Frequency Control */ #define TUNER_AFC |