Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/dev/pci Add support for the 82801DB ICH4 IDE controller, ...



details:   https://anonhg.NetBSD.org/src/rev/d2b4b4a806a1
branches:  trunk
changeset: 534614:d2b4b4a806a1
user:      bouyer <bouyer%NetBSD.org@localhost>
date:      Tue Jul 30 21:01:57 2002 +0000

description:
Add support for the 82801DB ICH4 IDE controller, from kern/17757 by
Andreas Wrede <andreas%planix.com@localhost>

diffstat:

 sys/dev/pci/pciide.c |  27 +++++++++++++++++++--------
 1 files changed, 19 insertions(+), 8 deletions(-)

diffs (92 lines):

diff -r f7842f9b1e45 -r d2b4b4a806a1 sys/dev/pci/pciide.c
--- a/sys/dev/pci/pciide.c      Tue Jul 30 20:50:10 2002 +0000
+++ b/sys/dev/pci/pciide.c      Tue Jul 30 21:01:57 2002 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: pciide.c,v 1.162 2002/07/26 14:11:35 wiz Exp $ */
+/*     $NetBSD: pciide.c,v 1.163 2002/07/30 21:01:57 bouyer Exp $      */
 
 
 /*
@@ -76,7 +76,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pciide.c,v 1.162 2002/07/26 14:11:35 wiz Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pciide.c,v 1.163 2002/07/30 21:01:57 bouyer Exp $");
 
 #ifndef WDCDEBUG
 #define WDCDEBUG
@@ -293,12 +293,17 @@
        },
        { PCI_PRODUCT_INTEL_82801CA_IDE_1,
          0,
-         "Intel 82201CA IDE Controller",
+         "Intel 82801CA IDE Controller",
          piix_chip_map,
        },
        { PCI_PRODUCT_INTEL_82801CA_IDE_2,
          0,
-         "Intel 82201CA IDE Controller",
+         "Intel 82801CA IDE Controller",
+         piix_chip_map,
+       },
+       { PCI_PRODUCT_INTEL_82801DB_IDE,
+         0,
+         "Intel 82801DB IDE Controller (ICH4)",
          piix_chip_map,
        },
        { 0,
@@ -1526,6 +1531,7 @@
                case PCI_PRODUCT_INTEL_82801BAM_IDE:
                case PCI_PRODUCT_INTEL_82801CA_IDE_1:
                case PCI_PRODUCT_INTEL_82801CA_IDE_2:
+               case PCI_PRODUCT_INTEL_82801DB_IDE:
                        sc->sc_wdcdev.cap |= WDC_CAPABILITY_UDMA;
                }
        }
@@ -1539,6 +1545,7 @@
        case PCI_PRODUCT_INTEL_82801BAM_IDE:
        case PCI_PRODUCT_INTEL_82801CA_IDE_1:
        case PCI_PRODUCT_INTEL_82801CA_IDE_2:
+       case PCI_PRODUCT_INTEL_82801DB_IDE:
                sc->sc_wdcdev.UDMA_cap = 5;
                break;
        default:
@@ -1568,7 +1575,8 @@
                    sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BA_IDE ||
                    sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BAM_IDE ||
                    sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801CA_IDE_1 ||
-                   sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801CA_IDE_2) {
+                   sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801CA_IDE_2 ||
+                   sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801DB_IDE) {
                        WDCDEBUG_PRINT((", IDE_CONTROL 0x%x",
                            pci_conf_read(sc->sc_pc, sc->sc_tag, PIIX_CONFIG)),
                            DEBUG_PROBE);
@@ -1622,7 +1630,8 @@
                    sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BA_IDE ||
                    sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BAM_IDE ||
                    sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801CA_IDE_1 ||
-                   sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801CA_IDE_2) {
+                   sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801CA_IDE_2 ||
+                   sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801DB_IDE) {
                        WDCDEBUG_PRINT((", IDE_CONTROL 0x%x",
                            pci_conf_read(sc->sc_pc, sc->sc_tag, PIIX_CONFIG)),
                            DEBUG_PROBE);
@@ -1785,13 +1794,15 @@
                    sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BA_IDE ||
                    sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BAM_IDE ||
                    sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801CA_IDE_1 ||
-                   sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801CA_IDE_2) {
+                   sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801CA_IDE_2 ||
+                   sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801DB_IDE) {
                        ideconf |= PIIX_CONFIG_PINGPONG;
                }
                if (sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BA_IDE ||
                    sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801BAM_IDE ||
                    sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801CA_IDE_1 ||
-                   sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801CA_IDE_2) {
+                   sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801CA_IDE_2 ||
+                   sc->sc_pp->ide_product == PCI_PRODUCT_INTEL_82801DB_IDE) {
                        /* setup Ultra/100 */
                        if (drvp->UDMA_mode > 2 &&
                            (ideconf & PIIX_CONFIG_CR(channel, drive)) == 0)



Home | Main Index | Thread Index | Old Index