fa.openbsd.tech
[Top] [All Lists]

TI carbus bridge diff

Subject: TI carbus bridge diff
From: Mark Kettenis <mark.kettenis@xxxxxxxxx>
Date: Fri, 18 Jul 2008 16:13:44 UTC
Newsgroups: fa.openbsd.tech

The diff below fixes a problem with setting up proper interrupt
routing on machines where the BIOS doesn't do so for us already.
Please test if you have a (currently working) TI cardbus bridge.

Thanks,

Mark


Index: pccbb.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/pccbb.c,v
retrieving revision 1.60
diff -u -p -r1.60 pccbb.c
--- pccbb.c     22 May 2008 19:23:04 -0000      1.60
+++ pccbb.c     18 Jul 2008 16:03:44 -0000
@@ -285,6 +285,8 @@ struct yenta_chipinfo {
            PCCBB_PCMCIA_IO_RELOC | PCCBB_PCMCIA_MEM_32},
        { MAKEID(PCI_VENDOR_TI, PCI_PRODUCT_TI_PCI1451), CB_TI12XX,
            PCCBB_PCMCIA_IO_RELOC | PCCBB_PCMCIA_MEM_32},
+       { MAKEID(PCI_VENDOR_TI, PCI_PRODUCT_TI_PCI1510), CB_TI12XX,
+           PCCBB_PCMCIA_IO_RELOC | PCCBB_PCMCIA_MEM_32},
        { MAKEID(PCI_VENDOR_TI, PCI_PRODUCT_TI_PCI7XX1), CB_TI12XX,
            PCCBB_PCMCIA_IO_RELOC | PCCBB_PCMCIA_MEM_32},
 
@@ -745,7 +747,7 @@ pccbb_chipinit(sc)
                 * The TI125X parts have a different register.
                 */
                reg = pci_conf_read(pc, tag, PCI12XX_MFUNC);
-               if (reg == 0) {
+               if (reg == PCI12XX_MFUNC_DEFAULT) {
                        reg &= ~PCI12XX_MFUNC_PIN0;
                        reg |= PCI12XX_MFUNC_PIN0_INTA;
                        if ((pci_conf_read(pc, tag, PCI_SYSCTRL) &


<Prev in Thread] Current Thread [Next in Thread>
  • TI carbus bridge diff, Mark Kettenis <=