kern/95661: pci_pci still not correct for initializing cardbus on HP AMD laptop

Brian McGovern mcgovern at beta.com
Wed Apr 12 18:40:16 UTC 2006


>Number:         95661
>Category:       kern
>Synopsis:       pci_pci still not correct for initializing cardbus on HP AMD laptop
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Apr 12 18:40:15 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Brian McGovern
>Release:        6.1-RC1
>Organization:
>Environment:
FreeBSD bmcgover-hp-laptop 6.1-RC1 FreeBSD 6.1-RC1 #1: Wed Apr 12 14:27:07 EDT 2006    root at bmcgover-hp-laptop:/usr/src/sys/i386/compile/LAPTOP  i386
>Description:
The BIOS on the system sets the wrong subordinate bus number (see patch). This causes cardbus cards not to be detected/attached properly on boot, or when inserted.
>How-To-Repeat:
Boot 6.1-RC1 kernel, insert cardbus card (e.g. Netgear WG511T)
>Fix:
Jung-uk Kim sent me the following patch based on 6.0-RELEASE that fixes the problem. It also appears to apply cleanly to 6.1-RC1.

Index: pci_pci.c
===================================================================
RCS file: /home/ncvs/src/sys/dev/pci/pci_pci.c,v
retrieving revision 1.37
diff -u -r1.37 pci_pci.c
--- pci_pci.c   29 Apr 2005 06:22:41 -0000      1.37
+++ pci_pci.c   11 Oct 2005 01:58:00 -0000
@@ -186,6 +186,14 @@
     case 0x060513d7:           /* Toshiba ???? */
        sc->flags |= PCIB_SUBTRACTIVE;
        break;
+
+    /* Compaq R3000 BIOS sets wrong subordinate bus number. */
+    case 0x00dd10de:
+       if (sc->subbus < 0xa) {
+           pci_write_config(dev, PCIR_SUBBUS_1, 0xa, 1);
+           sc->subbus = pci_read_config(dev, PCIR_SUBBUS_1, 1);
+       }
+       break;
     }
 
     /*

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


More information about the freebsd-bugs mailing list