misc/73324: [PATCH] [sys/dev/bktr] correct warning for Pinnacle PCTV Rave card

Florian Le Goff madflo at beertech.org
Sat Oct 30 13:20:09 PDT 2004


>Number:         73324
>Category:       misc
>Synopsis:       [PATCH] [sys/dev/bktr] correct warning for Pinnacle PCTV Rave card
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Sat Oct 30 20:20:09 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Florian Le Goff
>Release:        -current
>Organization:
epitech
>Environment:
FreeBSD ble.bleland.poxx.net 6.0-CURRENT FreeBSD 6.0-CURRENT #6: Sat Oct 30 11:57:48 CEST 2004     root at ble.bleland.poxx.net:/usr/src/sys/i386/compile/BLE  i386
>Description:
On -current, the bktr driver issues a "card vendor" warning while loading Pinnacle PCTV Rave Tuner TV Card.

bktr0: <BrookTree 878> mem 0xcfffe000-0xcfffefff irq 17 at device 9.0 on pci1
bktr0: [GIANT-LOCKED]
bktr0: Warning - card vendor 0x11bd (model 0x0012) unknown.
bktr0: Pinnacle/Miro TV, <no> tuner.

>How-To-Repeat:
      
>Fix:
Apply the following patch.

working dir : src/sys/dev/bktr

----- patch begin here -----
--- bktr_card.c~        Sun Aug  8 03:23:39 2004
+++ bktr_card.c Sat Oct 30 20:26:29 2004
@@ -568,6 +568,7 @@
 #define PCI_VENDOR_FLYVIDEO    0x1851
 #define PCI_VENDOR_FLYVIDEO_2  0x1852
 #define PCI_VENDOR_PINNACLE_ALT        0xBD11
+#define PCI_VENDOR_PINNACLE_ALT_2      0x11BD
 #define PCI_VENDOR_IODATA      0x10fc
 
 #define MODEL_IODATA_GV_BCTV3_PCI      0x4020
@@ -699,7 +700,8 @@
                     goto checkTuner;
                 }
 
-               if (subsystem_vendor_id == PCI_VENDOR_PINNACLE_ALT) {
+               if ((subsystem_vendor_id == PCI_VENDOR_PINNACLE_ALT)
+                || (subsystem_vendor_id == PCI_VENDOR_PINNACLE_ALT_2)) {
                     bktr->card = cards[ (card = CARD_MIRO) ];
                    bktr->card.eepromAddr = eeprom_i2c_address;
                    bktr->card.eepromSize = (u_char)(256 / EEPROMBLOCKSIZE)
----- patch end here -----

but, well, after a quick search on the Internet, the vendor ID really seems to be 11BD and not BD11 for Pinnacle cards.

The following patch resolve this :
----- patch begin here -----
--- bktr_card.c.old     Sun Aug  8 03:23:39 2004
+++ bktr_card.c Sat Oct 30 22:10:37 2004
@@ -567,7 +567,7 @@
 #define PCI_VENDOR_LEADTEK_ALT_3       0x107d
 #define PCI_VENDOR_FLYVIDEO    0x1851
 #define PCI_VENDOR_FLYVIDEO_2  0x1852
-#define PCI_VENDOR_PINNACLE_ALT        0xBD11
+#define PCI_VENDOR_PINNACLE_ALT        0x11BD
 #define PCI_VENDOR_IODATA      0x10fc
 
 #define MODEL_IODATA_GV_BCTV3_PCI      0x4020
----- patch end here -----

kernel rebuild, device reloaded give :

wbktr0: <BrookTree 878> mem 0xcfffe000-0xcfffefff irq 17 at device 9.0 on pci1
bktr0: [GIANT-LOCKED]
bktr0: Pinnacle/Miro TV, <no> tuner

Thanks,
Florian

>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list