diff options
author | Chris Cappuccio <chris@cvs.openbsd.org> | 2001-02-06 07:57:09 +0000 |
---|---|---|
committer | Chris Cappuccio <chris@cvs.openbsd.org> | 2001-02-06 07:57:09 +0000 |
commit | 7375ef8c7db60d9880ad1253432ca270ad2261ed (patch) | |
tree | 7a3e9260a4cae0b8086573dec523dd5620f67d88 /sys/dev/pci/pciide.c | |
parent | 1fd390471c1e7b11fd5a28fd34a7313a65d220a9 (diff) |
Laptop ICH2 IDE
Diffstat (limited to 'sys/dev/pci/pciide.c')
-rw-r--r-- | sys/dev/pci/pciide.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/sys/dev/pci/pciide.c b/sys/dev/pci/pciide.c index eea739b9385..8792a68bec3 100644 --- a/sys/dev/pci/pciide.c +++ b/sys/dev/pci/pciide.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pciide.c,v 1.43 2001/01/29 00:20:17 csapuntz Exp $ */ +/* $OpenBSD: pciide.c,v 1.44 2001/02/06 07:57:08 chris Exp $ */ /* $NetBSD: pciide.c,v 1.48 1999/11/28 20:05:18 bouyer Exp $ */ /* @@ -289,6 +289,10 @@ const struct pciide_product_desc pciide_intel_products[] = { 0, piix_chip_map }, + { PCI_PRODUCT_INTEL_82801BAM_IDE, /* Intel 82801BAM IDE (ICH2) */ + 0, + piix_chip_map + }, { PCI_PRODUCT_INTEL_82801BA_IDE, /* Intel 82801BA IDE (ICH2) */ 0, piix_chip_map @@ -1377,6 +1381,7 @@ piix_chip_map(sc, pa) case PCI_PRODUCT_INTEL_82440MX_IDE: case PCI_PRODUCT_INTEL_82801AA_IDE: case PCI_PRODUCT_INTEL_82801AB_IDE: + case PCI_PRODUCT_INTEL_82801BAM_IDE: case PCI_PRODUCT_INTEL_82801BA_IDE: sc->sc_wdcdev.cap |= WDC_CAPABILITY_UDMA; break; @@ -1391,6 +1396,7 @@ piix_chip_map(sc, pa) case PCI_PRODUCT_INTEL_82801AA_IDE: sc->sc_wdcdev.UDMA_cap = 4; break; + case PCI_PRODUCT_INTEL_82801BAM_IDE: case PCI_PRODUCT_INTEL_82801BA_IDE: sc->sc_wdcdev.UDMA_cap = 5; break; @@ -1421,6 +1427,7 @@ piix_chip_map(sc, pa) } if (sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801AA_IDE || sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801AB_IDE || + sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BAM_IDE || sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BA_IDE ) { WDCDEBUG_PRINT((", IDE_CONTROL 0x%x", pci_conf_read(sc->sc_pc, sc->sc_tag, PIIX_CONFIG)), @@ -1472,6 +1479,7 @@ piix_chip_map(sc, pa) } if (sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801AA_IDE || sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801AB_IDE || + sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BAM_IDE || sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BA_IDE ) { WDCDEBUG_PRINT((", IDE_CONTROL 0x%x", pci_conf_read(sc->sc_pc, sc->sc_tag, PIIX_CONFIG)), @@ -1632,10 +1640,12 @@ piix3_4_setup_channel(chp) if (sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801AA_IDE || sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801AB_IDE || + sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BAM_IDE || sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BA_IDE ) { ideconf |= PIIX_CONFIG_PINGPONG; } - if (sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BA_IDE) { + if (sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BAM_IDE || + sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BA_IDE) { /* setup Ultra/100 */ if (drvp->UDMA_mode > 2 && (ideconf & PIIX_CONFIG_CR(channel, drive)) == 0) |