Index: sys/arch/amd64/conf/files.amd64
===================================================================
RCS file: /cvsroot/src/sys/arch/amd64/conf/files.amd64,v
retrieving revision 1.29.4.1
diff -u -p -u -r1.29.4.1 files.amd64
--- sys/arch/amd64/conf/files.amd64     19 Dec 2007 19:38:52 -0000      1.29.4.1
+++ sys/arch/amd64/conf/files.amd64     7 Mar 2008 08:40:36 -0000
@@ -105,10 +105,13 @@ file      arch/amd64/amd64/cpu.c          cpu
include        "dev/pci/files.pci"
defparam                       PCI_CONF_MODE

+include "dev/pci/files.agp"
+file   arch/x86/pci/agp_machdep.c      agp
+
# PCI-Host bridge chipsets
-device pchb: pcibus
+device pchb: pcibus, agpbus, agp_i810, agp_intel, agp_sis, agp_via, agp_amd, agp_ali
attach pchb at pci
-file   arch/amd64/pci/pchb.c                   pchb
+file   arch/amd64/pci/pchb.c                   pchb            needs-flag
file   arch/x86/pci/pchb_rnd.c                 pchb & rnd

# PCI-ISA bridges
Index: sys/arch/amd64/pci/pchb.c
===================================================================
RCS file: /cvsroot/src/sys/arch/amd64/pci/Attic/pchb.c,v
retrieving revision 1.6
diff -u -p -u -r1.6 pchb.c
--- sys/arch/amd64/pci/pchb.c   12 Feb 2006 18:16:01 -0000      1.6
+++ sys/arch/amd64/pci/pchb.c   7 Mar 2008 08:40:37 -0000
@@ -53,6 +53,9 @@ __KERNEL_RCSID(0, "$NetBSD: pchb.c,v 1.6

#include <arch/x86/pci/pchbvar.h>

+#include <dev/pci/agpreg.h>
+#include <dev/pci/agpvar.h>
+
#include "rnd.h"

#define PCISET_BRIDGETYPE_MASK 0x3
@@ -102,9 +105,17 @@ pchbattach(struct device *parent, struct
#endif
       struct pci_attach_args *pa = aux;
       char devinfo[256];
+       struct pcibus_attach_args pba;
+       struct agpbus_attach_args apa;
+       u_char pbnum = 0; /* XXX: gcc */
+       int doattach, attachflags, has_agp;

       printf("\n");

+       doattach = 0;
+       has_agp = 0;
+       attachflags = pa->pa_flags;
+
       /*
        * Print out a description, and configure certain chipsets which
        * have auxiliary PCI buses.
@@ -114,9 +125,35 @@ pchbattach(struct device *parent, struct
       printf("%s: %s (rev. 0x%02x)\n", self->dv_xname, devinfo,
           PCI_REVISION(pa->pa_class));
       switch (PCI_VENDOR(pa->pa_id)) {
-               /* Nothing yet */
-               default:
+       case PCI_VENDOR_INTEL:
+               switch (PCI_PRODUCT(pa->pa_id)) {
+               case PCI_PRODUCT_INTEL_82810_MCH:
+               case PCI_PRODUCT_INTEL_82810_DC100_MCH:
+               case PCI_PRODUCT_INTEL_82810E_MCH:
+               case PCI_PRODUCT_INTEL_82815_FULL_HUB:
+               case PCI_PRODUCT_INTEL_82830MP_IO_1:
+               case PCI_PRODUCT_INTEL_82845G_DRAM:
+               case PCI_PRODUCT_INTEL_82855GM_MCH:
+               case PCI_PRODUCT_INTEL_82865_HB:
+               case PCI_PRODUCT_INTEL_82915G_HB:
+               case PCI_PRODUCT_INTEL_82915GM_HB:
+               case PCI_PRODUCT_INTEL_82945P_MCH:
+               case PCI_PRODUCT_INTEL_82945GM_HB:
+               case PCI_PRODUCT_INTEL_82965Q_HB:
+               case PCI_PRODUCT_INTEL_82965PM_HB:
+                       /*
+                        * The host bridge is either in GFX mode (internal
+                        * graphics) or in AGP mode. In GFX mode, we pretend
+                        * to have AGP because the graphics memory access
+                        * is very similar and the AGP GATT code will
+                        * deal with this. In the latter case, the
+                        * pci_get_capability(PCI_CAP_AGP) test below will
+                        * fire, so we do no harm by already setting the flag.
+                        */
+                       has_agp = 1;
                       break;
+               }
+               break;
       }

#if NRND > 0
@@ -125,4 +162,30 @@ pchbattach(struct device *parent, struct
        */
       pchb_attach_rnd(sc, pa);
#endif
+
+       /*
+        * If we haven't detected AGP yet (via a product ID),
+        * then check for AGP capability on the device.
+        */
+       if (has_agp ||
+           pci_get_capability(pa->pa_pc, pa->pa_tag, PCI_CAP_AGP,
+                              NULL, NULL) != 0) {
+               apa.apa_pci_args = *pa;
+               config_found_ia(self, "agpbus", &apa, agpbusprint);
+       }
+
+       if (doattach) {
+               pba.pba_iot = pa->pa_iot;
+               pba.pba_memt = pa->pa_memt;
+               pba.pba_dmat = pa->pa_dmat;
+               pba.pba_dmat64 = pa->pa_dmat64;
+               pba.pba_pc = pa->pa_pc;
+               pba.pba_flags = attachflags;
+               pba.pba_bus = pbnum;
+               pba.pba_bridgetag = NULL;
+               pba.pba_pc = pa->pa_pc;
+               pba.pba_intrswiz = 0;
+               memset(&pba.pba_intrtag, 0, sizeof(pba.pba_intrtag));
+               config_found_ia(self, "pcibus", &pba, pcibusprint);
+       }
}
Index: sys/arch/i386/conf/files.i386
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/conf/files.i386,v
retrieving revision 1.296.2.5
diff -u -p -u -r1.296.2.5 files.i386
--- sys/arch/i386/conf/files.i386       12 Sep 2007 10:05:00 -0000      1.296.2.5
+++ sys/arch/i386/conf/files.i386       7 Mar 2008 08:40:49 -0000
@@ -152,7 +152,7 @@ file        arch/i386/i386/mainbus.c        mainbus

include        "dev/pci/files.pci"
include "dev/pci/files.agp"
-file   arch/i386/pci/agp_machdep.c     agp
+file   arch/x86/pci/agp_machdep.c      agp
file   arch/i386/pci/pcibios.c         pcibios
file   arch/i386/pci/pci_intr_fixup.c  pcibios & pci_intr_fixup
file   arch/i386/pci/piix.c            pcibios & pci_intr_fixup
Index: sys/arch/i386/pci/pchb.c
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/pci/Attic/pchb.c,v
retrieving revision 1.62.2.2
diff -u -p -u -r1.62.2.2 pchb.c
--- sys/arch/i386/pci/pchb.c    29 Jan 2007 15:54:17 -0000      1.62.2.2
+++ sys/arch/i386/pci/pchb.c    7 Mar 2008 08:40:50 -0000
@@ -316,6 +316,8 @@ pchbattach(struct device *parent, struct
               case PCI_PRODUCT_INTEL_82915GM_HB:
               case PCI_PRODUCT_INTEL_82945P_MCH:
               case PCI_PRODUCT_INTEL_82945GM_HB:
+               case PCI_PRODUCT_INTEL_82965Q_HB:
+               case PCI_PRODUCT_INTEL_82965PM_HB:
                       /*
                        * The host bridge is either in GFX mode (internal
                        * graphics) or in AGP mode. In GFX mode, we pretend
Index: sys/dev/pci/agp.c
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/agp.c,v
retrieving revision 1.43
diff -u -p -u -r1.43 agp.c
--- sys/dev/pci/agp.c   16 Nov 2006 01:33:08 -0000      1.43
+++ sys/dev/pci/agp.c   7 Mar 2008 08:41:03 -0000
@@ -153,6 +153,10 @@ const struct agp_product {
         NULL,                 agp_i810_attach },
       { PCI_VENDOR_INTEL,     PCI_PRODUCT_INTEL_82945GM_HB,
         NULL,                 agp_i810_attach },
+       { PCI_VENDOR_INTEL,     PCI_PRODUCT_INTEL_82965PM_HB,
+         NULL,                 agp_i810_attach },
+       { PCI_VENDOR_INTEL,     PCI_PRODUCT_INTEL_82965Q_HB,
+         NULL,                 agp_i810_attach },
#endif

#if NAGP_INTEL > 0
@@ -675,7 +679,6 @@ agp_acquire_helper(struct agp_softc *sc,
static int
agp_release_helper(struct agp_softc *sc, enum agp_acquire_state state)
{
-       struct agp_memory *mem;

       if (sc->as_state == AGP_ACQUIRE_FREE)
               return 0;
@@ -683,18 +686,6 @@ agp_release_helper(struct agp_softc *sc,
       if (sc->as_state != state)
               return EBUSY;

-       /*
-        * Clear out outstanding aperture mappings.
-        * (should not be necessary, done by caller)
-        */
-       TAILQ_FOREACH(mem, &sc->as_memory, am_link) {
-               if (mem->am_is_bound) {
-                       printf("agp_release_helper: mem %d is bound\n",
-                              mem->am_id);
-                       AGP_UNBIND_MEMORY(sc, mem);
-               }
-       }
-
       sc->as_state = AGP_ACQUIRE_FREE;
       return 0;
}
Index: sys/dev/pci/agp_i810.c
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/agp_i810.c,v
retrieving revision 1.35
diff -u -p -u -r1.35 agp_i810.c
--- sys/dev/pci/agp_i810.c      16 Nov 2006 01:33:08 -0000      1.35
+++ sys/dev/pci/agp_i810.c      7 Mar 2008 08:41:04 -0000
@@ -64,6 +64,10 @@ __KERNEL_RCSID(0, "$NetBSD: agp_i810.c,v
                       bus_space_write_4(isc->gtt_bst, isc->gtt_bsh,   \
                           (u_int32_t)((off) >> AGP_PAGE_SHIFT) * 4,   \
                           (v));                                       \
+               } else if (isc->chiptype == CHIP_I965) {                \
+                       WRITE4(AGP_I965_GTT +                           \
+                           (u_int32_t)((off) >> AGP_PAGE_SHIFT) * 4,   \
+                           (v));                                       \
               } else {                                                \
                       WRITE4(AGP_I810_GTT +                           \
                           (u_int32_t)((off) >> AGP_PAGE_SHIFT) * 4,   \
@@ -75,6 +79,7 @@ __KERNEL_RCSID(0, "$NetBSD: agp_i810.c,v
#define CHIP_I830 1    /* 830M/845G */
#define CHIP_I855 2    /* 852GM/855GM/865G */
#define CHIP_I915 3    /* 915G/915GM/945G/945GM */
+#define CHIP_I965 4    /* 965Q */

struct agp_i810_softc {
       u_int32_t initial_aperture;     /* aperture size at startup */
@@ -142,12 +147,35 @@ agp_i810_vgamatch(struct pci_attach_args
       case PCI_PRODUCT_INTEL_82945P_IGD:
       case PCI_PRODUCT_INTEL_82945GM_IGD:
       case PCI_PRODUCT_INTEL_82945GM_IGD_1:
+       case PCI_PRODUCT_INTEL_82965Q_IGD:
+       case PCI_PRODUCT_INTEL_82965Q_IGD_1:
+       case PCI_PRODUCT_INTEL_82965G_IGD:
+       case PCI_PRODUCT_INTEL_82965G_IGD_1:
+       case PCI_PRODUCT_INTEL_82965PM_IGD:
+       case PCI_PRODUCT_INTEL_82965PM_IGD_1:
               return (1);
       }

       return (0);
}

+static int
+agp_i965_map_aperture(struct pci_attach_args *pa, struct agp_softc *sc, int reg)
+{
+        /*
+         * Find the aperture. Don't map it (yet), this would
+         * eat KVA.
+         */
+        if (pci_mapreg_info(pa->pa_pc, pa->pa_tag, reg,
+            PCI_MAPREG_TYPE_MEM|PCI_MAPREG_MEM_TYPE_64BIT, &sc->as_apaddr, &sc->as_apsize,
+            &sc->as_apflags) != 0)
+                return ENXIO;
+
+        sc->as_apt = pa->pa_memt;
+
+        return 0;
+}
+
int
agp_i810_attach(struct device *parent, struct device *self, void *aux)
{
@@ -155,6 +183,7 @@ agp_i810_attach(struct device *parent, s
       struct agp_i810_softc *isc;
       struct agp_gatt *gatt;
       int error, apbase;
+       bus_size_t mmadrsize;

       isc = malloc(sizeof *isc, M_AGP, M_NOWAIT|M_ZERO);
       if (isc == NULL) {
@@ -206,10 +235,22 @@ agp_i810_attach(struct device *parent, s
       case PCI_PRODUCT_INTEL_82945GM_IGD_1:
               isc->chiptype = CHIP_I915;
               break;
+       case PCI_PRODUCT_INTEL_82965Q_IGD:
+       case PCI_PRODUCT_INTEL_82965Q_IGD_1:
+       case PCI_PRODUCT_INTEL_82965PM_IGD:
+       case PCI_PRODUCT_INTEL_82965PM_IGD_1:
+       case PCI_PRODUCT_INTEL_82965G_IGD:
+       case PCI_PRODUCT_INTEL_82965G_IGD_1:
+               isc->chiptype = CHIP_I965;
+               break;
       }

       apbase = isc->chiptype == CHIP_I915 ? AGP_I915_GMADR : AGP_I810_GMADR;
-       error = agp_map_aperture(&isc->vga_pa, sc, apbase);
+       if (isc->chiptype == CHIP_I965) {
+               error = agp_i965_map_aperture(&isc->vga_pa, sc, AGP_I965_GMADR);
+       } else {
+               error = agp_map_aperture(&isc->vga_pa, sc, apbase);
+       }
       if (error != 0) {
               aprint_error(": can't map aperture\n");
               free(isc, M_AGP);
@@ -218,7 +259,8 @@ agp_i810_attach(struct device *parent, s

       if (isc->chiptype == CHIP_I915) {
               error = pci_mapreg_map(&isc->vga_pa, AGP_I915_MMADR,
-                   PCI_MAPREG_TYPE_MEM, 0, &isc->bst, &isc->bsh, NULL, NULL);
+                   PCI_MAPREG_TYPE_MEM, 0, &isc->bst, &isc->bsh,
+                   NULL, &mmadrsize);
               if (error != 0) {
                       aprint_error(": can't map mmadr registers\n");
                       agp_generic_detach(sc);
@@ -233,9 +275,19 @@ agp_i810_attach(struct device *parent, s
                       agp_generic_detach(sc);
                       return error;
               }
+       } else if (isc->chiptype == CHIP_I965) {
+               error = pci_mapreg_map(&isc->vga_pa, AGP_I965_MMADR,
+                   PCI_MAPREG_TYPE_MEM, 0, &isc->bst, &isc->bsh,
+                   NULL, &mmadrsize);
+               if (error != 0) {
+                       aprint_error(": can't map mmadr registers\n");
+                       agp_generic_detach(sc);
+                       return error;
+               }
       } else {
               error = pci_mapreg_map(&isc->vga_pa, AGP_I810_MMADR,
-                   PCI_MAPREG_TYPE_MEM, 0, &isc->bst, &isc->bsh, NULL, NULL);
+                   PCI_MAPREG_TYPE_MEM, 0, &isc->bst, &isc->bsh,
+                   NULL, &mmadrsize);
               if (error != 0) {
                       aprint_error(": can't map mmadr registers\n");
                       agp_generic_detach(sc);
@@ -316,68 +368,58 @@ agp_i810_attach(struct device *parent, s
               WRITE4(AGP_I810_PGTBL_CTL, pgtblctl);

               gatt->ag_physical = pgtblctl & ~1;
-       } else if (isc->chiptype == CHIP_I855) {
-               /* The 855GM automatically initializes the 128k gatt on boot. */
+       } else if (isc->chiptype == CHIP_I855 || isc->chiptype == CHIP_I915 ||
+                  isc->chiptype == CHIP_I965) {
               pcireg_t reg;
-               u_int32_t pgtblctl;
+               u_int32_t pgtblctl, stolen;
               u_int16_t gcc1;

+               /* Stolen memory is set up at the beginning of the aperture by
+                 * the BIOS, consisting of the GATT followed by 4kb for the
+                * BIOS display.
+                 */
+               switch (isc->chiptype) {
+               case CHIP_I855:
+                       stolen = 128 + 4;
+                       break;
+               case CHIP_I915:
+                       stolen = 256 + 4;
+                       break;
+               case CHIP_I965:
+                       stolen = 512 + 4;
+                       break;
+               default:
+                       aprint_error(": bad chiptype\n");
+                       agp_generic_detach(sc);
+                       return EINVAL;
+               }
+
               reg = pci_conf_read(sc->as_pc, sc->as_tag, AGP_I855_GCC1);
               gcc1 = (u_int16_t)(reg >> 16);
               switch (gcc1 & AGP_I855_GCC1_GMS) {
               case AGP_I855_GCC1_GMS_STOLEN_1M:
-                       isc->stolen = (1024 - 132) * 1024 / 4096;
+                       isc->stolen = (1024 - stolen) * 1024 / 4096;
                       break;
               case AGP_I855_GCC1_GMS_STOLEN_4M:
-                       isc->stolen = (4096 - 132) * 1024 / 4096;
+                       isc->stolen = (4096 - stolen) * 1024 / 4096;
                       break;
               case AGP_I855_GCC1_GMS_STOLEN_8M:
-                       isc->stolen = (8192 - 132) * 1024 / 4096;
+                       isc->stolen = (8192 - stolen) * 1024 / 4096;
                       break;
               case AGP_I855_GCC1_GMS_STOLEN_16M:
-                       isc->stolen = (16384 - 132) * 1024 / 4096;
+                       isc->stolen = (16384 - stolen) * 1024 / 4096;
                       break;
               case AGP_I855_GCC1_GMS_STOLEN_32M:
-                       isc->stolen = (32768 - 132) * 1024 / 4096;
+                       isc->stolen = (32768 - stolen) * 1024 / 4096;
                       break;
-               default:
-                       isc->stolen = 0;
-                       aprint_error(
-                           ": unknown memory configuration, disabling\n");
-                       agp_generic_detach(sc);
-                       return EINVAL;
-               }
-               if (isc->stolen > 0) {
-                       aprint_error(": detected %dk stolen memory\n%s",
-                           isc->stolen * 4, sc->as_dev.dv_xname);
-               }
-
-               /* GATT address is already in there, make sure it's enabled */
-               pgtblctl = READ4(AGP_I810_PGTBL_CTL);
-               pgtblctl |= 1;
-               WRITE4(AGP_I810_PGTBL_CTL, pgtblctl);
-
-               gatt->ag_physical = pgtblctl & ~1;
-       } else {        /* CHIP_I915 */
-               /* The 915G automatically initializes the 256k gatt on boot. */
-               pcireg_t reg;
-               u_int32_t pgtblctl;
-               u_int16_t gcc1;
-
-               reg = pci_conf_read(sc->as_pc, sc->as_tag, AGP_I915_GCC1);
-               gcc1 = (u_int16_t)(reg >> 16);
-               switch (gcc1 & AGP_I915_GCC1_GMS) {
-               case AGP_I915_GCC1_GMS_STOLEN_0M:
-                       isc->stolen = 0;
-                       break;
-               case AGP_I915_GCC1_GMS_STOLEN_1M:
-                       isc->stolen = (1024 - 260) * 1024 / 4096;
+               case AGP_I915_GCC1_GMS_STOLEN_48M:
+                       isc->stolen = (49152 - stolen) * 1024 / 4096;
                       break;
-               case AGP_I915_GCC1_GMS_STOLEN_8M:
-                       isc->stolen = (8192 - 260) * 1024 / 4096;
-                       break;
-               default:
-                       isc->stolen = 0;
+               case AGP_I915_GCC1_GMS_STOLEN_64M:
+                       isc->stolen = (65536 - stolen) * 1024 / 4096;
+                       break;
+               default:
+                       isc->stolen = 0;
                       aprint_error(
                           ": unknown memory configuration, disabling\n");
                       agp_generic_detach(sc);
@@ -449,10 +491,10 @@ agp_i810_get_aperture(struct agp_softc *
{
       struct agp_i810_softc *isc = sc->as_chipc;
       pcireg_t reg;
+       u_int16_t miscc, gcc1, msac;

-       if (isc->chiptype == CHIP_I810) {
-               u_int16_t miscc;
-
+       switch (isc->chiptype) {
+       case CHIP_I810:
               reg = pci_conf_read(sc->as_pc, sc->as_tag, AGP_I810_SMRAM);
               miscc = (u_int16_t)(reg >> 16);
               if ((miscc & AGP_I810_MISCC_WINSIZE) ==
@@ -460,27 +502,29 @@ agp_i810_get_aperture(struct agp_softc *
                       return 32 * 1024 * 1024;
               else
                       return 64 * 1024 * 1024;
-       } else if (isc->chiptype == CHIP_I830) {
-               u_int16_t gcc1;
-
+       case CHIP_I830:
               reg = pci_conf_read(sc->as_pc, sc->as_tag, AGP_I830_GCC0);
               gcc1 = (u_int16_t)(reg >> 16);
               if ((gcc1 & AGP_I830_GCC1_GMASIZE) == AGP_I830_GCC1_GMASIZE_64)
                       return 64 * 1024 * 1024;
               else
                       return 128 * 1024 * 1024;
-       } else if (isc->chiptype == CHIP_I855) {
+       case CHIP_I855:
               return 128 * 1024 * 1024;
-       } else {        /* CHIP_I915 */
-               u_int16_t msac;
-
+       case CHIP_I915:
               reg = pci_conf_read(sc->as_pc, sc->as_tag, AGP_I915_MSAC);
               msac = (u_int16_t)(reg >> 16);
               if (msac & AGP_I915_MSAC_APER_128M)
                       return 128 * 1024 * 1024;
               else
                       return 256 * 1024 * 1024;
+       case CHIP_I965:
+               return 512 * 1024 * 1024;
+       default:
+               aprint_error(": Unknown chipset\n");
       }
+
+       return 0;
}

static int
@@ -488,10 +532,10 @@ agp_i810_set_aperture(struct agp_softc *
{
       struct agp_i810_softc *isc = sc->as_chipc;
       pcireg_t reg;
+       u_int16_t miscc, gcc1;

-       if (isc->chiptype == CHIP_I810) {
-               u_int16_t miscc;
-
+       switch (isc->chiptype) {
+       case CHIP_I810:
               /*
                * Double check for sanity.
                */
@@ -513,9 +557,8 @@ agp_i810_set_aperture(struct agp_softc *
               reg &= 0x0000ffff;
               reg |= ((pcireg_t)miscc) << 16;
               pci_conf_write(sc->as_pc, sc->as_tag, AGP_I810_SMRAM, reg);
-       } else if (isc->chiptype == CHIP_I830) {
-               u_int16_t gcc1;
-
+               break;
+       case CHIP_I830:
               if (aperture != (64 * 1024 * 1024) &&
                   aperture != (128 * 1024 * 1024)) {
                       printf("%s: bad aperture size %d\n",
@@ -533,12 +576,22 @@ agp_i810_set_aperture(struct agp_softc *
               reg &= 0x0000ffff;
               reg |= ((pcireg_t)gcc1) << 16;
               pci_conf_write(sc->as_pc, sc->as_tag, AGP_I830_GCC0, reg);
-       } else {        /* CHIP_I855 or CHIP_I915 */
+               break;
+       case CHIP_I855:
+       case CHIP_I915:
               if (aperture != agp_i810_get_aperture(sc)) {
                       printf("%s: bad aperture size %d\n",
                           sc->as_dev.dv_xname, aperture);
                       return EINVAL;
               }
+               break;
+       case CHIP_I965:
+               if (aperture != 512 * 1024 * 1024) {
+                       printf("%s: bad aperture size %d\n",
+                           sc->as_dev.dv_xname, aperture);
+                       return EINVAL;
+               }
+               break;
       }

       return 0;
Index: sys/dev/pci/agpreg.h
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/agpreg.h,v
retrieving revision 1.10
diff -u -p -u -r1.10 agpreg.h
--- sys/dev/pci/agpreg.h        16 Jan 2006 22:59:36 -0000      1.10
+++ sys/dev/pci/agpreg.h        7 Mar 2008 08:41:04 -0000
@@ -78,13 +78,21 @@
#define AGP_INTEL_ATTBASE      0xb8

/*
- * Config offsets for VIA AGP chipsets.
+ * Config offsets for VIA AGP 2.x chipsets.
 */
#define AGP_VIA_GARTCTRL       0x80
#define AGP_VIA_APSIZE         0x84
#define AGP_VIA_ATTBASE                0x88

/*
+ * Config offsets for VIA AGP 3.0 chipsets.
+ */
+#define AGP3_VIA_GARTCTRL      0x90
+#define AGP3_VIA_APSIZE                0x94
+#define AGP3_VIA_ATTBASE       0x98
+#define AGP_VIA_AGPSEL         0xfd
+
+/*
 * Config offsets for SiS AGP chipsets.
 */
#define AGP_SIS_ATTBASE                0x90
@@ -216,7 +224,53 @@
#define        AGP_I915_GCC1_GMS_STOLEN_0M     0x00
#define        AGP_I915_GCC1_GMS_STOLEN_1M     0x10
#define        AGP_I915_GCC1_GMS_STOLEN_8M     0x30
+#define        AGP_I915_GCC1_GMS_STOLEN_16M    0x40
+#define        AGP_I915_GCC1_GMS_STOLEN_32M    0x50
+#define        AGP_I915_GCC1_GMS_STOLEN_48M    0x60
+#define        AGP_I915_GCC1_GMS_STOLEN_64M    0x70
#define AGP_I915_MSAC                  0x62
#define        AGP_I915_MSAC_APER_128M         0x02

+/*
+ * Config registers for 965G/965Q
+ */
+#define AGP_I965_MMADR                 0x10
+#define AGP_I965_GMADR                 0x18
+
+#define AGP_I965_GTT                   0x80000
+
+/*
+ * AMD64 GART registers
+ */
+#define        AGP_AMD64_APCTRL                0x90
+#define        AGP_AMD64_APBASE                0x94
+#define        AGP_AMD64_ATTBASE               0x98
+#define        AGP_AMD64_CACHECTRL             0x9c
+#define        AGP_AMD64_APCTRL_GARTEN         0x00000001
+#define        AGP_AMD64_APCTRL_SIZE_MASK      0x0000000e
+#define        AGP_AMD64_APCTRL_DISGARTCPU     0x00000010
+#define        AGP_AMD64_APCTRL_DISGARTIO      0x00000020
+#define        AGP_AMD64_APCTRL_DISWLKPRB      0x00000040
+#define        AGP_AMD64_APBASE_MASK           0x00007fff
+#define        AGP_AMD64_ATTBASE_MASK          0xfffffff0
+#define        AGP_AMD64_CACHECTRL_INVGART     0x00000001
+#define        AGP_AMD64_CACHECTRL_PTEERR      0x00000002
+
+/*
+ * NVIDIA nForce3 registers
+ */
+#define AGP_AMD64_NVIDIA_0_APBASE      0x10
+#define AGP_AMD64_NVIDIA_1_APBASE1     0x50
+#define AGP_AMD64_NVIDIA_1_APLIMIT1    0x54
+#define AGP_AMD64_NVIDIA_1_APSIZE      0xa8
+#define AGP_AMD64_NVIDIA_1_APBASE2     0xd8
+#define AGP_AMD64_NVIDIA_1_APLIMIT2    0xdc
+
+/*
+ * ULi M1689 registers
+ */
+#define AGP_AMD64_ULI_APBASE           0x10
+#define AGP_AMD64_ULI_HTT_FEATURE      0x50
+#define AGP_AMD64_ULI_ENU_SCR          0x54
+
#endif /* !_PCI_AGPREG_H_ */
Index: sys/dev/pci/pci_map.c
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/pci_map.c,v
retrieving revision 1.18
diff -u -p -u -r1.18 pci_map.c
--- sys/dev/pci/pci_map.c       16 Nov 2006 01:33:09 -0000      1.18
+++ sys/dev/pci/pci_map.c       7 Mar 2008 08:41:05 -0000
@@ -163,8 +163,11 @@ pci_mem_find(pci_chipset_tag_t pc, pcita
                       printf("pci_mem_find: expected type mem, found i/o\n");
                       return (1);
               }
+               /* XXX */
               if (PCI_MAPREG_MEM_TYPE(address) !=
-                   PCI_MAPREG_MEM_TYPE(type)) {
+                   PCI_MAPREG_MEM_TYPE(type) &&
+                   PCI_MAPREG_MEM_TYPE(address) !=
+                   PCI_MAPREG_MEM_TYPE_64BIT) {
                       printf("pci_mem_find: "
                           "expected mem type %08x, found %08x\n",
                           PCI_MAPREG_MEM_TYPE(type),
Index: sys/dev/pci/pcidevs
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/pcidevs,v
retrieving revision 1.855.2.19
diff -u -p -u -r1.855.2.19 pcidevs
--- sys/dev/pci/pcidevs 23 Feb 2008 14:21:50 -0000      1.855.2.19
+++ sys/dev/pci/pcidevs 7 Mar 2008 08:41:11 -0000
@@ -555,6 +555,7 @@ vendor ETIMEDIA             0x1409  eTIMedia Technol
vendor ICENSEMBLE      0x1412  IC Ensemble / VIA Technologies
vendor MICROSOFT       0x1414  Microsoft
vendor OXFORDSEMI      0x1415  Oxford Semiconductor
+vendor CHELSIO         0x1425  Chelsio Communications
vendor TAMARACK                0x143d  Tamarack Microelectronics
vendor SAMSUNGELEC3    0x144d  Samsung Electronics (3rd vendor ID)
vendor ASKEY           0x144f  Askey Computer
@@ -600,6 +601,7 @@ vendor ARECA                0x17d3  Areca
vendor S2IO            0x17d5  S2io Technologies
vendor LINKSYS2                0x17fe  Linksys
vendor RALINK          0x1814  Ralink Technologies
+vendor ATTANSIC                0x1969  Attansic Technologies
vendor SYMPHONY2       0x1c1c  Symphony Labs (2nd PCI Vendor ID)
vendor TEKRAM2         0x1de1  Tekram Technology (2nd PCI Vendor ID)
vendor DATUM           0x12e2  Datum Inc. Bancomm-Timing Division
@@ -760,6 +762,7 @@ product ALI M1533   0x1533  M1533 PCI-ISA B
product ALI M1541      0x1541  M1541 Host-PCI Bridge
product ALI M1543      0x1533  M1543 PCI-ISA Bridge
product ALI M1563      0x1563  M1563 PCI-ISA Bridge
+product ALI M1689      0x1689  M1689 Host-PCI Bridge
product ALI M3309      0x3309  M3309 MPEG Decoder
product ALI M4803      0x5215  M4803
product ALI M5257      0x5257  M5257 PCI Software Modem
@@ -768,6 +771,7 @@ product ALI M5237   0x5237  M5237 USB 1.1 H
product ALI M5239      0x5239  M5239 USB 2.0 Host Controller
product ALI M5243      0x5243  M5243 PCI-AGP Bridge
product ALI M5249      0x5249  M5249 Hypertransport to PCI bridge
+product ALI M5261      0x5261  M5261 Tulip Ethernet Controller
product ALI M5451      0x5451  M5451 AC-Link Controller Audio Device
product ALI M5453      0x5453  M5453 AC-Link Controller Modem Device
product ALI M5455      0x5455  M5455 AC-Link Controller Audio Device
@@ -831,6 +835,7 @@ product ADDTRON RHINEII     0x1320  Rhine II
product ADMTEK AL981   0x0981  AL981 (Comet) 10/100 Ethernet
product ADMTEK AN983   0x0985  AN983 (Centaur-P) 10/100 Ethernet
product ADMTEK AN985   0x1985  AN985 (Centaur-C) 10/100 Ethernet
+product ADMTEK ADM5120 0x5120  Infineon ADM5120 PCI host bridge
product ADMTEK ADM8211 0x8201  ADM8211 11Mbps 802.11b WLAN
product ADMTEK ADM9511 0x9511  ADM9511 (Centaur-II) 10/100 Ethernet
product ADMTEK ADM9513 0x9513  ADM9513 (Centaur-II) 10/100 Ethernet
@@ -869,31 +874,53 @@ product ALTIMA AC1001     0x03e9  AC1001 Giga
product ALTIMA AC9100  0x03ea  AC9100 Gigabit Ethernet

/* AMD products */
-product AMD AMD64_HT   0x1100  AMD64 HyperTransport configuration
-product AMD AMD64_ADDR 0x1101  AMD64 Address Map configuration
-product AMD AMD64_DRAM 0x1102  AMD64 DRAM configuration
-product AMD AMD64_MISC 0x1103  AMD64 Miscellaneous configuration
+product AMD AMD64_HT   0x1100  K8 AMD64 HyperTransport configuration
+product AMD AMD64_ADDR 0x1101  K8 AMD64 Address Map configuration
+product AMD AMD64_DRAM 0x1102  K8 AMD64 DRAM configuration
+product AMD AMD64_MISC 0x1103  K8 AMD64 Miscellaneous configuration
+product AMD AMD64_F10_HT       0x1200  AMD64 Family10h HyperTransport configuration
+product AMD AMD64_F10_ADDR     0x1201  AMD64 Family10h Address Map configuration
+product AMD AMD64_F10_DRAM     0x1202  AMD64 Family10h DRAM configuration
+product AMD AMD64_F10_MISC     0x1203  AMD64 Family10h Miscellaneous configuration
+product AMD AMD64_F10_LINK     0x1204  AMD64 Family10h Link configuration
+product AMD AMD64_F11_HT       0x1300  AMD64 Family11h HyperTransport configuration
+product AMD AMD64_F11_ADDR     0x1301  AMD64 Family11h Address Map configuration
+product AMD AMD64_F11_DRAM     0x1302  AMD64 Family11h DRAM configuration
+product AMD AMD64_F11_MISC     0x1303  AMD64 Family11h Miscellaneous configuration
+product AMD AMD64_F11_LINK     0x1304  AMD64 Family11h Link configuration
product AMD PCNET_PCI  0x2000  PCnet-PCI Ethernet
product AMD PCNET_HOME 0x2001  PCnet-Home HomePNA Ethernet
+product AMD AM_1771_MBW        0x2003  Alchemy AM 1771 MBW
product AMD PCSCSI_PCI 0x2020  PCscsi-PCI SCSI
product AMD GEODELX_PCHB       0x2080  Geode LX Host-PCI Bridge
product AMD GEODELX_VGA        0x2081  Geode LX VGA Controller
product AMD GEODELX_AES        0x2082  Geode LX AES Security Block
+product        AMD CS5536_PCISB        0x208f  CS5536 GeodeLink PCI South Bridge
product AMD CS5536_PCIB        0x2090  CS5536 PCI-ISA Bridge
+product AMD CS5536_FLASH       0x2091  CS5536 Flash
+product AMD CS5536_AUDIO       0x2093  CS5536 Audio
product AMD CS5536_OHCI        0x2094  CS5536 OHCI USB Controller
product AMD CS5536_EHCI        0x2095  CS5536 EHCI USB Controller
+product AMD CS5536_UDC 0x2096  CS5536 UDC
+product AMD CS5536_UOC 0x2097  CS5536 UOC
product AMD CS5536_IDE 0x209a  CS5536 IDE Controller
product AMD SC520_SC   0x3000  Elan SC520 System Controller
product AMD SC751_SC   0x7006  AMD751 System Controller
product AMD SC751_PPB  0x7007  AMD751 PCI-PCI Bridge
-product AMD PBC756_ISA 0x7408  AMD756 PCI-ISA Bridge
-product AMD PBC756_IDE 0x7409  AMD756 IDE controller
-product AMD PBC756_PMC 0x740b  AMD756 Power Management Controller
-product AMD PBC756_USB 0x740c  AMD756 USB Host Controller
+product AMD IGR4_AGP   0x700a  AMD IGR4 AGP Bridge
+product AMD IGR4_PPB   0x700b  AMD IGR4 PCI-PCI Bridge
product AMD SC762_NB   0x700c  AMD762 Northbridge
product AMD SC762_PPB  0x700d  AMD762 AGP Bridge
product AMD SC761_SC   0x700e  AMD761 System Controller
product AMD SC761_PPB  0x700f  AMD761 PCI-PCI Bridge
+product AMD PBC755_ISA 0x7400  AMD755 PCI-ISA Bridge
+product AMD PBC755_IDE 0x7401  AMD755 IDE controller
+product AMD PBC755_PMC 0x7403  AMD755 ACPI controller
+product AMD PBC755_USB 0x7404  AMD755 USB Host controller
+product AMD PBC756_ISA 0x7408  AMD756 PCI-ISA Bridge
+product AMD PBC756_IDE 0x7409  AMD756 IDE controller
+product AMD PBC756_PMC 0x740b  AMD756 Power Management Controller
+product AMD PBC756_USB 0x740c  AMD756 USB Host Controller
product AMD PBC766_ISA 0x7410  AMD766 Southbridge
product AMD PBC766_IDE 0x7411  AMD766 IDE controller
product AMD PBC766_PMC 0x7413  AMD766 Power Management Controller
@@ -909,14 +936,19 @@ product AMD PCIX8131_PPB  0x7450  AMD8131
product AMD PCIX8131_APIC      0x7451  AMD8131 IO Apic
product AMD AGP8151_DEV        0x7454  AMD8151 AGP Device
product AMD AGP8151_PPB        0x7455  AMD8151 AGP Bridge
-product        AMD PCIX_APIC   0x7459  AMD PCI-X IOAPIC
+product AMD PCIX_PPB   0x7458  AMD8123 PCI-X Bridge
+product        AMD PCIX_APIC   0x7459  AMD8132 PCI-X IOAPIC
product AMD PBC8111    0x7460  AMD8111 I/O Hub
+product AMD PBC8111_USB_7461   0x7461  AMD8111 7461 USB Host Controller
+product AMD PBC8111_ETHER      0x7462  AMD8111 Ethernet
product AMD PBC8111_USB                0x7464  AMD8111 USB Host Controller
product AMD PBC8111_LPC                0x7468  AMD8111 LPC Controller
product AMD PBC8111_IDE                0x7469  AMD8111 IDE Controller
product AMD PBC8111_SMB                0x746a  AMD8111 SMBus Controller
product AMD PBC8111_ACPI       0x746b  AMD8111 ACPI Controller
product AMD PBC8111_AC         0x746d  AMD8111 AC97 Audio
+product AMD PBC8111_MC97       0x746e  AMD8111 MC97 Modem
+product AMD PBC8111_AC_756b    0x756b  AMD8111 756b ACPI Controller

/* American Megatrends products */
product AMI MEGARAID           0x9010  MegaRAID
@@ -1006,12 +1038,36 @@ product ARECA ARC1381   0x1381  ARC-1381
product ARECA ARC1680  0x1680  ARC-1680
product ARECA ARC1681  0x1681  ARC-1681

+/* Areca products */
+product ARECA ARC1110          0x1110  ARC-1110
+product ARECA ARC1120          0x1120  ARC-1120
+product ARECA ARC1130          0x1130  ARC-1130
+product ARECA ARC1160          0x1160  ARC-1160
+product ARECA ARC1170          0x1170  ARC-1170
+product ARECA ARC1200          0x1200  ARC-1200
+product ARECA ARC1200_B                0x1201  ARC-1200 rev B
+product ARECA ARC1202          0x1202  ARC-1202
+product ARECA ARC1210          0x1210  ARC-1210
+product ARECA ARC1220          0x1220  ARC-1220
+product ARECA ARC1230          0x1230  ARC-1230
+product ARECA ARC1260          0x1260  ARC-1260
+product ARECA ARC1270          0x1270  ARC-1270
+product ARECA ARC1280          0x1280  ARC-1280
+product ARECA ARC1380          0x1380  ARC-1380
+product ARECA ARC1381          0x1381  ARC-1381
+product ARECA ARC1680          0x1680  ARC-1680
+product ARECA ARC1681          0x1681  ARC-1681
+
/* ASIX Electronics products */
product ASIX AX88140A  0x1400  AX88140A 10/100 Ethernet

/* Asustek products */
product ASUSTEK HFCPCI         0x0675  ISDN

+/* Attansic Technology Corp. */
+product ATTANSIC ETHERNET_GIGA 0x1048  L1 Gigabit Ethernet Adapter
+product ATTANSIC ETHERNET_100  0x2048  L2 100 Mbit Ethernet Adapter
+
/* ATI products */
product ATI RADEON_RV380_3150  0x3150  Radeon Mobility X600 (M24) 3150
product ATI RADEON_RV380_3154  0x3154  FireGL M24 GL 3154
@@ -1066,7 +1122,18 @@ product ATI SB400_SATA_1 0x4379  SB400 SA
product ATI SB400_SATA_2       0x437a  SB400 SATA Controller
product ATI SB600_SATA_1       0x4380  SB600 SATA Controller
product ATI SB600_SATA_2       0x4381  SB600 SATA Controller
+product ATI SB600_AC97_AUDIO   0x4382  SB600 AC97 Audio
+product ATI SB600_AZALIA       0x4383  SB600 Azalia
+product ATI SB600_PPB_4384     0x4384  SB600 PCI to PCI Bridge
+product ATI SB600_SMBUS                0x4385  SB600 SMBus Controller
+product ATI SB600_USB_EHCI     0x4386  SB600 USB EHCI Controller
+product ATI SB600_USB_OHCI0    0x4387  SB600 USB OHCI0 Controller
+product ATI SB600_USB_OHCI1    0x4388  SB600 USB OHCI1 Controller
+product ATI SB600_USB_OHCI2    0x4389  SB600 USB OHCI2 Controller
+product ATI SB600_USB_OHCI3    0x438a  SB600 USB OHCI3 Controller
+product ATI SB600_USB_OHCI4    0x438b  SB600 USB OHCI4 Controller
product ATI IXP_IDE_600        0x438c  SB600 IXP IDE Controller
+product ATI SB600_PLB_438D     0x438d  SB600 PCI to LPC Bridge
product ATI MACH64_CT          0x4354  Mach64 CT
product ATI MACH64_CX          0x4358  Mach64 CX
product ATI RADEON_RS250_D7    0x4437  Radeon Mobility 7000 IGP
@@ -1172,6 +1239,7 @@ product ATI RADEON_RV200_QW       0x5157  Radeo
product ATI RADEON_RV200_QX    0x5158  Radeon 7500 QX
product ATI RADEON_RV100_QY    0x5159  Radeon 7000/VE QY
product ATI RADEON_RV100_QZ    0x515a  Radeon 7000/VE QZ
+product ATI ES1000             0x515e  ES1000
product ATI RADEON_9100_S      0x516d  Radeon 9100 Series Secondary
product ATI RAGEGLPCI          0x5245  Rage 128 GL PCI
product ATI RAGEGLAGP          0x5246  Rage 128 GL AGP 2x
@@ -1203,20 +1271,27 @@ product ATI RADEON_RS300_X5     0x5835  Radeo
product ATI RS300_AGP          0x5838  RS300 AGP Interface
product ATI RADEON_9200_PRO_S  0x5940  Radeon 9200 Pro Secondary
product ATI RADEON_9200_S      0x5941  Radeon 9200 Secondary
+product ATI RS480_HB           0x5950  RS480 Host Bridge
+product ATI RD580              0x5952  RD580 CrossFire Xpress 3200 Host Bridge
+product ATI RADEON_RV370_5954  0x5954  Radeon Xpress 200G Series
product ATI RADEON_RV280_5960  0x5960  Radeon 9200PRO 5960
product ATI RADEON_RV280_5961  0x5961  Radeon 9200 5961
product ATI RADEON_RV280_5962  0x5962  Radeon 9200 5962
product ATI RADEON_RV280_5963  0x5963  Radeon 9200 5963
product ATI RADEON_RV280_5964  0x5964  Radeon 9200SE 5964
-product ATI RS480_HB           0x5950  RS480 Host Bridge
product ATI RS482M             0x5975  Radeon Xpress Series (RS482M)
product ATI RS480_XRP          0x5a34  RS480 PCI Express Root Port
product ATI RS480_PPB_5A36     0x5a36  RS480 PCI Express Bridge
+product ATI RS480_PPB_5A37     0x5a37  RS480 PCI Express Bridge
+product ATI RS480_PPB_5A38     0x5a38  RS480 PCI Express Bridge
product ATI RS480_PPB_5A3F     0x5a3f  RS480 PCI Express Bridge
product ATI RADEON_RV370_5B60  0x5b60  Radeon X300 (RV370) 5B60
+product ATI RADEON_RV380_5B62  0x5b62  Radeon X600 PCI Express
+product ATI RADEON_RV370_5B63  0x5b63  Radeon Sapphire X550 Silent
product ATI RADEON_RV370_5B64  0x5b64  FireGL V3100 (RV370) 5B64
-product ATI RADEON_RV370_5B65  0x5b64  FireGL D1100 (RV370) 5B65
+product ATI RADEON_RV370_5B65  0x5b65  FireGL D1100 (RV370) 5B65
product ATI RADEON_X300_S      0x5b70  Radeon X300 Series Secondary
+product ATI RADEON_RV370_5B73  0x5b73  Radeon RV370 secondary
product ATI RADEON_RV280_5C61  0x5c61  Radeon Mobility 9200 (M9+)
product ATI RADEON_RV280_5C63  0x5c63  Radeon Mobility 9200 (M9+)
product ATI RADEON_9200SE_S    0x5d44  Radeon 9200SE Secondary
@@ -1225,8 +1300,12 @@ product ATI RADEON_R423_5D57     0x5d57  Rade
product ATI RADEON_X850XT_S    0x5d72  Radeon X850 XT Secondary
product ATI RADEON_X700                0x5e4b  Radeon X700 Pro
product ATI RADEON_X700_S      0x5e6b  Radeon X700 Pro Secondary
+product ATI RADEON_X1300       0x7146  Radeon X1300 Series (RV515)
+product ATI RADEON_X1300_S     0x7166  Radeon X1300 Series (RV515) Secondary
product ATI RADEON_RS300_7834  0x7834  Radeon 9100 PRO IGP
product ATI RADEON_RS300_7835  0x7835  Radeon 9200 IGP
+product ATI RADEON_HD2600_XT   0x9588  Radeon HD2600 XT GDDR3
+product ATI RADEON_HD2600_HD   0xaa08  Radeon HD2600 HD Audio Controller

/* Auravision products */
product AURAVISION VXP524      0x01f7  VxP524 PCI Video Processor
@@ -1398,6 +1477,17 @@ product C4T GPPCI                0x6773  GPPCI
/* Cavium products */
product CAVIUM NITROX          0x0001  Nitrox XL

+/* Chelsio products */
+product CHELSIO T302E          0x0021  T302e
+product CHELSIO        T310E           0x0022  T310e
+product CHELSIO        T320X           0x0023  T320x
+product CHELSIO        T302X           0x0024  T302x
+product CHELSIO        T320E           0x0025  T320e
+product CHELSIO        T310X           0x0026  T310x
+product CHELSIO        T3B10           0x0030  T3B10
+product CHELSIO        T3B20           0x0031  T3B20
+product CHELSIO        T3B02           0x0032  T3B02
+
/* Chips and Technologies products */
product CHIPS 64310            0x00b8  64310
product CHIPS 69000            0x00c0  69000
@@ -1450,10 +1540,11 @@ product CMDTECH 670             0x0670  USB0670
product CMDTECH 673            0x0673  USB0673
product CMDTECH 680            0x0680  SiI0680
product CMDTECH 3112           0x3112  SiI3112 SATALink
-product CMDTECH 3512           0x3512  SiI3512 SATALink
product CMDTECH 3114           0x3114  SiI3114 SATALink
product CMDTECH 3124           0x3124  SiI3124 SATALink
product CMDTECH 3132           0x3132  SiI3132 SATALink
+product CMDTECH 3512           0x3512  SiI3512 SATALink
+product CMDTECH 3531           0x3531  SiI3531 SATALink

/* C-Media products */
product CMEDIA CMI8338A                0x0100  CMI8338A PCI Audio Device
@@ -1536,7 +1627,11 @@ product COMTROL ROCKETPORTP422   0x000f  Ro
/* Conexant Systems products */
product CONEXANT SOFTK56       0x2443  SoftK56 PCI Software Modem
product CONEXANT 56KFAXMODEM   0x1085  HW 56K Fax Modem
-product        CONEXANT LANFINITY      0x1803  LANfinity MiniPCI 10/100 Ethernet
+product CONEXANT LANFINITY     0x1803  LANfinity MiniPCI 10/100 Ethernet
+product CONEXANT CX2388X       0x8800  CX23880/1/2/3 PCI Video/Audio Decoder
+product CONEXANT CX2388XAUDIO  0x8801  CX23880/1/2/3 PCI Audio Port
+product CONEXANT CX2388XMPEG   0x8802  CX23880/1/2/3 PCI MPEG Port
+product CONEXANT CX2388XIR     0x8804  CX23880/1/2/3 PCI IR Port

/* Contaq Microsystems products */
product CONTAQ 82C599          0x0600  82C599 PCI-VLB Bridge
@@ -1812,6 +1907,10 @@ product MARVELL 88SX5080 0x5080  88SX5080
product MARVELL 88SX5081       0x5081  88SX5081 SATA
product MARVELL 88SX6041       0x6041  88SX6041 SATA
product MARVELL 88SX6081       0x6081  88SX6041 SATA
+product MARVELL 88SE6101       0x6101  88SE6101 single-port PATA133 Controller
+product MARVELL 88SE6121       0x6121  88SE6121 SATA II Controller
+product MARVELL 88SE614X       0x6141  88SE614X SATA II PCI-E Controller
+product MARVELL 88SE6145       0x6145  88SE6145 SATA II PCI-E Controller
product MARVELL        GT64130         0x6320  GT-64130 System Controller
product MARVELL        GT64260         0x6430  GT-64260 System Controller
product MARVELL        GT64360         0x6460  MV6436x System Controller
@@ -1888,24 +1987,47 @@ product HITACHI SH7751R 0x350e  SH7751R P
product IBM MCABRIDGE  0x0002  MCA Bridge
product IBM ALTALITE   0x0005  CPU Bridge - Alta Lite
product IBM ALTAMP     0x0007  CPU Bridge - Alta MP
-product IBM ISABRIDGE  0x000a  ISA Bridge w/PnP
+product IBM ISABRIDGE  0x000a  Fire Coral ISA Bridge w/PnP
+product IBM POWERWAVE  0x0013  PowerWave Graphics Adapter
+product IBM IDAHO      0x0015  Idaho PCI Bridge
product IBM CPUBRIDGE  0x0017  CPU Bridge
product IBM LANSTREAMER        0x0018  Auto LANStreamer
product IBM GXT150P    0x001b  GXT-150P 2D Accelerator
+product IBM CARRERA    0x001c  Carrera PCI Bridge
+product IBM 82G2675    0x001d  82G2675 SCSI-2 Fast Controller
product IBM MCABRIDGE2 0x0020  MCA Bridge
product IBM 82351      0x0022  82351 PCI-PCI Bridge
+product IBM MONNAV     0x002c  Montana/Nevada PCI Bridge and Memory Controller
+product IBM PYTHON     0x002d  Python PCI-PCI Bridge
product IBM SERVERAID  0x002e  ServeRAID
+product IBM GXT250P    0x003c  GXT-250P Graphics Adapter
product IBM OLYMPIC    0x003e  16/4 Token Ring
product IBM MIAMI      0x0036  Miami/PCI
product IBM 82660      0x0037  82660 PowerPC to PCI Bridge and Memory Controller
product IBM MPIC       0x0046  MPIC
product IBM TURBOWAYS25        0x0053  Turboways 25 ATM
-product IBM GXT800P    0x005e  GXT-800P
+product IBM GXT500P    0x0054  GXT-500P/GXT550P Graphics Adapter
+product IBM I82557B    0x005c  i82557B 10/100 Ethernet
+product IBM GXT800P    0x005e  GXT-800P Graphics Adapter
+product IBM EADSPCI    0x008b  EADS PCI-PCI Bridge
+product IBM GXT3000P   0x008e  GXT-3000P Graphics Adapter
+product IBM GXT3000P2  0x0090  GXT-3000P Graphics Adapter(2)
+product IBM GXT2000P   0x00b8  GXT-2000P Graphics Adapter
product IBM OLYMPIC2   0x00ce  Olympic 2 Token Ring
+product IBM CPC71064   0x00fc  CPC710 Dual Bridge and Memory Controller (PCI64)
+product IBM CPC71032   0x0105  CPC710 Dual Bridge and Memory Controller (PCI32)
product IBM TPAUDIO    0x0153  ThinkPad 600X/A20/T20/T22 Audio
product IBM 405GP      0x0156  PPC 405GP PCI Bridge
+product IBM GXT4000P   0x016e  GXT-4000P Graphics Adapter
+product IBM GXT6000P   0x0170  GXT-6000P Graphics Adapter
+product IBM GXT300P    0x017d  GXT-300P Graphics Adapter
product IBM 133PCIX    0x01a7  133 PCI-X Bridge
product IBM SERVERAID4 0x01bd  ServeRAID 4/5
+product IBM 440GP      0x01ef  PPC 440GP PCI Bridge
+product IBM IBMETHER   0x01ff  10/100 Ethernet
+product IBM GXT6500P   0x021b  GXT-6500P Graphics Adapter
+product IBM GXT4500P   0x021c  GXT-4500P Graphics Adapter
+product IBM GXT135P    0x0233  GXT-135P Graphics Adapter
product IBM MPIC2      0xffff  MPIC-II

/* IC Ensemble / VIA Technologies products */
@@ -1944,6 +2066,8 @@ product IMS TT128M        0x9128  TwinTurbo 128M
/* Intel products */
product INTEL 80312            0x030d  80312 I/O Companion Chip
product INTEL 80321            0x0319  80321 I/O Processor
+product INTEL IOP333_A         0x0370  IOP333 PCI Express-to-PCI Bridge #0
+product INTEL IOP333_B         0x0372  IOP333 PCI Express-to-PCI Bridge #1
product INTEL 6700PXH_PCIE0    0x0329  6700PXH PCI Express-to-PCI Bridge #0
product INTEL 6700PXH_PCIE1    0x032a  6700PXH PCI Express-to-PCI Bridge #1
product INTEL SRCZCRX          0x0407  RAID controller
@@ -2279,6 +2403,10 @@ product INTEL 82801G_IDE 0x27df  82801GB/
product INTEL 82801G_EXP_5     0x27e0  82801GB/GR PCI Express Port #5
product INTEL 82801G_EXP_6     0x27e2  82801GB/GR PCI Express Port #6
product INTEL 82801H_LPC       0x2810  82801H LPC Interface Bridge
+product INTEL 82801HEM_LPC     0x2811  82801HEM LPC
+product INTEL 82801HH_LPC      0x2812  82801HH LPC Interface Bridge
+product INTEL 82801HO_LPC      0x2814  82801HO LPC Interface Bridge
+product INTEL 82801HBM_LPC      0x2815  82801HBM LPC Interface Bridge
product INTEL 82801H_SATA_1    0x2820  82801H SATA Controller
product INTEL 82801H_SATA_AHCI6        0x2821  82801H AHCI SATA Controller with 6 ports
product INTEL 82801H_SATA_RAID 0x2822  82801H RAID SATA Controller
@@ -2302,16 +2430,51 @@ product INTEL 82801H_EXP_4      0x2845  82801H
product INTEL 82801H_EXP_5     0x2847  82801H PCI Express Port #5
product INTEL 82801H_EXP_6     0x2849  82801H PCI Express Port #6
product INTEL 82801H_HDA       0x284b  82801H High Definition Audio Controller
-product INTEL 82801I_IGP_C     0x294c  82801I (C) LAN Controller
product INTEL 82801H_THERMAL   0x284f  82801H Thermal Controller
product INTEL 82801HBM_IDE     0x2850  82801H IDE Controller
+product INTEL 82801IH_LPC      0x2912  82801IH LPC Interface Bridge
+product INTEL 82801IO_LPC      0x2914  82801IO LPC Interface Bridge
+product INTEL 82801IR_LPC      0x2916  82801IR LPC Interface Bridge
+product INTEL 82801IB_LPC      0x2918  82801IB LPC Interface Bridge
product INTEL 82801I_SATA_1    0x2920  82801I SATA Controller with 4 ports
product INTEL 82801I_SATA_2    0x2921  82801I SATA Controller with 2 ports
+product INTEL 82801I_SATA_AHCI6        0x2922  82801I AHCI SATA Controller with 6 ports
+product INTEL 82801I_SATA_AHCI4        0x2923  82801I AHCI SATA Controller with 4 ports
product INTEL 82801I_SATA_3    0x2926  82801I SATA Controller with 2 ports
+product INTEL 82801I_SMB       0x2930  82801I SMBus Controller
+product INTEL 82801I_THERMAL   0x2932  82801I Thermal Controller
+product INTEL 82801I_USB_1     0x2934  82801I USB UHCI Controller
+product INTEL 82801I_USB_2     0x2935  82801I USB UHCI Controller
+product INTEL 82801I_USB_3     0x2936  82801I USB UHCI Controller
+product INTEL 82801I_USB_4     0x2937  82801I USB UHCI Controller
+product INTEL 82801I_USB_5     0x2938  82801I USB UHCI Controller
+product INTEL 82801I_USB_6     0x2939  82801I USB UHCI Controller
+product INTEL 82801I_EHCI_1    0x293a  82801I USB EHCI Controller
+product INTEL 82801I_EHCI_2    0x293c  82801I USB EHCI Controller
+product INTEL 82801I_HDA       0x293e  82801I High Definition Audio Controller
+product INTEL 82801I_EXP_1     0x2940  82801I PCI Express Port #1
+product INTEL 82801I_EXP_2     0x2942  82801I PCI Express Port #2
+product INTEL 82801I_EXP_3     0x2944  82801I PCI Express Port #3
+product INTEL 82801I_EXP_4     0x2946  82801I PCI Express Port #4
+product INTEL 82801I_EXP_5     0x2948  82801I PCI Express Port #5
+product INTEL 82801I_EXP_6     0x294a  82801I PCI Express Port #6
+product INTEL 82801I_IGP_C     0x294c  82801I (C) LAN Controller
product INTEL 82965Q_HB                0x2990  82965Q Host Bridge
product INTEL 82965Q_EXP       0x2991  82965Q PCI Express Bridge
product INTEL 82965Q_IGD       0x2992  82965Q Integrated Graphics Device
product INTEL 82965Q_IGD_1     0x2993  82965Q Integrated Graphics Device
+product INTEL 82965G_HB                0x29a0  82965G Host Bridge
+product INTEL 82965G_EXP       0x29a1  82965G PCI Express Bridge
+product INTEL 82965G_IGD       0x29a2  82965G Integrated Graphics Device
+product INTEL 82965G_IGD_1     0x29a3  82965G Integrated Graphics Device
+product        INTEL 82G33_HB          0x29c0  82G33/P35 Host Bridge
+product        INTEL 82G33_EXP         0x29c1  82G33 PCI Express Port
+product        INTEL 82G33_IGD         0x29c2  82G33 Integrated Graphics Device
+product        INTEL 82G33_IGD_1       0x29c3  82G33 Integrated Graphics Device
+product INTEL 82801I_LAN       0x29c4  82801I LAN Controller
+product INTEL 82965PM_HB       0x2a00  82965PM Host Bridge
+product        INTEL 82965PM_IGD       0x2a02  82965PM Integrated Graphics Device
+product        INTEL 82965PM_IGD_1     0x2a03  82965PM Integrated Graphics Device
product INTEL 31244            0x3200  31244 Serial ATA Controller
product INTEL 82855PM_DDR      0x3340  82855PM MCH Host Controller
product INTEL 82855PM_AGP      0x3341  82855PM Host-AGP Bridge
@@ -2340,6 +2503,8 @@ product INTEL PRO_WL_3945ABG_1    0x4222  PR
product INTEL PRO_WL_2915ABG_1 0x4223  PRO/Wireless LAN 2915ABG Mini-PCI Adapter
product INTEL PRO_WL_2915ABG_2 0x4224  PRO/Wireless LAN 2915ABG Mini-PCI Adapter
product INTEL PRO_WL_3945ABG_2 0x4227  PRO/Wireless LAN 3945ABG Mini-PCI Adapter
+product INTEL PRO_WL_4965AGN_1 0x4229  PRO/Wireless LAN 4965AGN Mini-PCI Adapter
+product INTEL PRO_WL_4965AGN_2 0x4230  PRO/Wireless LAN 4965AGN Mini-PCI Adapter
product INTEL 80312_ATU                0x530d  80310 ATU
product INTEL 82371SB_ISA      0x7000  82371SB (PIIX3) PCI-ISA Bridge
product INTEL 82371SB_IDE      0x7010  82371SB (PIIX3) IDE Interface
@@ -2634,8 +2799,11 @@ product SYMBIOS 1035                     0x0040  53c1035
product SYMBIOS 1035ZC                 0x0041  53c1035ZC
product SYMBIOS SAS1064                        0x0050  SAS1064
product SYMBIOS SAS1068                        0x0054  SAS1068
+product SYMBIOS SAS1068_2              0x0055  SAS1068
product SYMBIOS SAS1064E               0x0056  SAS1064E
+product SYMBIOS SAS1064E_2             0x0057  SAS1064E
product SYMBIOS SAS1068E               0x0058  SAS1068E
+product SYMBIOS SAS1068E_2             0x0059  SAS1068E
product SYMBIOS SAS1066E               0x005A  SAS1066E
product SYMBIOS SAS1064A               0x005C  SAS1064A
product SYMBIOS SAS1066                        0x005E  SAS1066
@@ -2664,8 +2832,9 @@ product SYMBIOS MEGARAID_VERDE_ZCR        0x041
product SYMBIOS PE_GNIC        0x0702  Packet Engines G-NIC Ethernet

/* Parallels products */
-product PARALLELS TOOLS        0x1112  Tools
-product PARALLELS VIDEO        0x1121  Video
+product PARALLELS TOOLS                0x1112  Tools
+product PARALLELS VIDEO                0x1121  Video
+product        PARALLELS VIDEO2        0x1131  Video II

/* NEC products */
product NEC USB                0x0035  USB Host Controller
@@ -2726,6 +2895,7 @@ product NVIDIA    RIVATNT2        0x0028  RIVA TNT2
product NVIDIA RIVATNT2U       0x0029  RIVA TNT2 Ultra
product NVIDIA VANTA           0x002c  Vanta
product NVIDIA RIVATNT2M64     0x002d  RIVA TNT2 Model 64
+product NVIDIA MCP04_SMBUS     0x0034  MCP04 SMBus
product NVIDIA MCP04_IDE       0x0035  MCP04 IDE
product NVIDIA MCP04_SATA      0x0036  MCP04 SATA
product NVIDIA MCP04_LAN1      0x0037  MCP04 Ethernet
@@ -2768,8 +2938,9 @@ product NVIDIA    NFORCE2_400_MCPT_AC     0x008
product NVIDIA NFORCE2_400_PPB         0x008b  nForce2 Ultra 400 PCI-PCI bridge
product NVIDIA NFORCE2_400_LAN2        0x008c  nForce2 Ultra 400 Ethernet
product NVIDIA NFORCE2_400_SATA        0x008e  nForce2 Ultra 400 Serial ATA Controller
-product NVIDIA NFORCE3_PCHB    0x00d1  nForce3 Host-PCI bridge
product NVIDIA NFORCE3_PCIB    0x00d0  nForce3 PCI-ISA bridge
+product NVIDIA NFORCE3_PCHB    0x00d1  nForce3 Host-PCI bridge
+product NVIDIA NFORCE3_PPB2    0x00d2  nForce3 PCI-PCI
product NVIDIA NFORCE3_SMBUS   0x00d4  nForce3 SMBus controller
product NVIDIA NFORCE3_ATA133  0x00d5  nForce3 ATA133 IDE
product NVIDIA NFORCE3_LAN1    0x00d6  nForce3 Ethernet
@@ -2790,6 +2961,8 @@ product NVIDIA    NFORCE3_250_EHCI        0x00e8  n
product NVIDIA NFORCE3_250_MCPT_AC     0x00ea  nForce3 250 MCP-T AC-97
product NVIDIA NFORCE3_250_PPB         0x00ed  nForce3 250 PCI-PCI bridge
product NVIDIA NFORCE3_250_SATA2       0x00ee  nForce3 250 Serial ATA Controller
+product NVIDIA XBOX_SMBUS      0x01b4  Xbox nForce SMBus Controller
+product NVIDIA XBOX_PCHB       0x02a5  Xbox nForce Host-PCI bridge
product NVIDIA ALADDINTNT2     0x00a0  Aladdin TNT2
product NVIDIA QUADRO4_280NVS2 0x00fd  Quadro4 280 NVS
product NVIDIA QUADROFX3400SLI 0x00fd  Quadro FX 3400 SLI
@@ -2822,7 +2995,7 @@ product NVIDIA    GEFORCE2_IGP    0x01a0  GeFor
product NVIDIA NFORCE_MCP_AC   0x01b1  nForce MCP AC-97
product NVIDIA NFORCE_ATA100   0x01bc  nForce ATA100 IDE
product NVIDIA NFORCE_USB      0x01c2  nForce USB
-product NVIDIA NFORCE_LAN      0x01c3  nForce Ethetnet
+product NVIDIA NFORCE_LAN      0x01c3  nForce Ethernet
product NVIDIA NFORCE2_PCHB    0x01e0  nForce2 Host-PCI Bridge
product NVIDIA NFORCE2_PPB2    0x01e8  nForce2 PCI-PCI Bridge
product NVIDIA NFORCE2_MEM1    0x01eb  nForce2 Memory Controller
@@ -2859,6 +3032,7 @@ product NVIDIA    GF4_TI_4200_GO  0x0286  GeF
product NVIDIA QUADRO4_980_XGL 0x0288  Quadro4 980 XGL
product NVIDIA QUADRO4_780_XGL 0x0289  Quadro4 780 XGL
product NVIDIA GEFORCE_FX5800U 0x0301  GeForce FX 5800 Ultra
+product NVIDIA XBOXFB          0x02a0  Xbox Frame Buffer
product NVIDIA GEFORCE_FX5800  0x0302  GeForce FX 5800
product NVIDIA QUADRO_FX_2000  0x0308  Quadro FX 2000
product NVIDIA QUADRO_FX_1000  0x0309  Quadro FX 1000
@@ -2887,8 +3061,9 @@ product NVIDIA    MCP55_HDA       0x0371  nForce M
product NVIDIA MCP55_LAN1      0x0372  nForce MCP55 Gigabit Ethernet Controller
product NVIDIA MCP55_LAN2      0x0373  nForce MCP55 Gigabit Ethernet Controller
product NVIDIA MCP55_PCIE      0x0377  nForce MCP55 PCI-Express 16x Port
-product NVIDIA  MCP55_SATA      0x037e  nForce MCP55 Seria ATA Controller
+product NVIDIA  MCP55_SATA      0x037e  nForce MCP55 Serial ATA Controller
product NVIDIA  MCP55_SATA2     0x037f  nForce MCP55 Serial ATA Controller
+product NVIDIA GF_GO_7600      0x0398  GeForce Go 7600
product NVIDIA MCP61_ISA       0x03e0  nForce MCP61 PCI-ISA Bridge
product NVIDIA MCP61_HDA       0x03e4  nForce MCP61 High Definition Audio Controller
product NVIDIA MCP61_LAN1      0x03e5  nForce MCP61 Gigabit Ethernet Controller
@@ -3026,6 +3201,7 @@ product PACKETENGINES GNICII      0x0911  G-NI

/* pcHDTV products */
product PCHDTV HD2000  0x2000  HD-2000 HDTV video capture
+product PCHDTV HD5500  0x5500  HD-5500 HDTV video capture

/* PC Tech products */
product PCTECH RZ1000  0x1000  RZ1000
@@ -3038,7 +3214,8 @@ product PLANEX FNW_3603_TX        0xab06  FNW-36
product PLANEX FNW_3800_TX     0xab07  FNW-3800-TX 10/100 Ethernet

/* PLX Technology products */
-product PLX 9030       0x9030  9030 Modem 4 port
+product PLX 9030       0x9030  9030 I/O Accelrator
+product PLX 9050       0x5201  9050 I/O Accelrator
product PLX 9054       0x9054  9054 I/O Accelerator
product PLX 9060ES     0x906e  9060ES PCI bus controller
product PLX 9656       0x9656  9656 I/O Accelerator
@@ -3139,6 +3316,8 @@ product RICOH Rx5C477     0x0477 5C477 PCI-C
product RICOH Rx5C478  0x0478 5C478 PCI-CardBus bridge
product RICOH Rx5C551  0x0551 5C551 PCI-CardBus bridge/Firewire
product RICOH Rx5C552  0x0552 5C552 PCI-CardBus bridge/Firewire
+product RICOH Rx5C822  0x0822 5C822 SD/MMC Host Adapter
+product RICOH Rx5C843  0x0843 5C843 MMC Host Controller

/* RISCom (SDL Communications?) products */
product RISCOM N2      0x5568  N2
@@ -3221,8 +3400,10 @@ product SERVERWORKS CIOB_E               0x0110  CIOB-
product SERVERWORKS OSB4               0x0200  OSB4 southbridge
product SERVERWORKS CSB5               0x0201  CSB5 southbridge
product SERVERWORKS CSB6               0x0203  CSB6 southbridge
+product SERVERWORKS HT1000SB           0x0205  HT1000SB southbridge
product SERVERWORKS OSB4_IDE           0x0211  OSB4 IDE
product SERVERWORKS CSB5_IDE           0x0212  CSB5 IDE
+product SERVERWORKS HT1000_IDE                 0x0214  HT-1000 IDE Controller
product SERVERWORKS CSB6_RAID          0x0213  CSB6 IDE/RAID
product SERVERWORKS CSB6_IDE           0x0217  CSB6 IDE/RAID
product SERVERWORKS OSB4_USB           0x0220  OSB4/CSB5 USB Host Controller
@@ -3232,7 +3413,8 @@ product SERVERWORKS CSB6_LPC              0x0227  CSB
product SERVERWORKS K2_SATA            0x0240  K2 SATA
product SERVERWORKS FRODO4_SATA                0x0241  Frodo4 SATA
product SERVERWORKS FRODO8_SATA                0x0242  Frodo8 SATA
-product SERVERWORKS HT1000_SATA                0x024a  HT-1000 SATA
+product SERVERWORKS HT1000_SATA_1      0x024a  HT-1000 SATA
+product SERVERWORKS HT1000_SATA_2      0x024b  HT-1000 SATA
product SERVERWORKS BCM5714            0x0103  bcm5714/bcm5715 integral PCI-E to PCI-X bridge

/* SGI products */
@@ -3606,14 +3788,19 @@ product V3 V96DPC       0xc960  V96DPC  i960 (Du

/* VIA Technologies products, from http://www.via.com.tw/ */
product VIATECH VT6305         0x0130  VT6305 IEEE 1394 Host Controller
+product VIATECH K8M800_0       0x0204  K8M800 Host
+product VIATECH K8T890_0       0x0238  K8T890 Host
product VIATECH KT880          0x0269  KT880 CPU to PCI Bridge
+product VIATECH K8HTB_0                0x0282  K8HTB Host
product VIATECH VT8363_HB      0x0305  VT8363 (Apollo KT133) Host Bridge
+product VIATECH VT3351_HB_0351 0x0351  VT3351 Host Bridge
product VIATECH        VT8371_HB       0x0391  VT8371 (Apollo KX133) Host Bridge
product VIATECH VT8501_MVP4    0x0501  VT8501 (Apollo MVP4) Host Bridge
product VIATECH VT82C505       0x0505  VT82C505 (Pluto)
product VIATECH VT82C561       0x0561  VT82C561
product VIATECH VT82C586A_IDE  0x0571  VT82C586A IDE Controller
product VIATECH VT82C576       0x0576  VT82C576 3V
+product VIATECH CX700_IDE      0x0581  CX700 IDE Controller
product VIATECH VT82C580VP     0x0585  VT82C580 (Apollo VP) Host-PCI Bridge
product VIATECH VT82C586_ISA   0x0586  VT82C586 PCI-ISA Bridge
product VIATECH VT8237A_SATA   0x0591  VT8237A Integrated SATA Controller
@@ -3629,9 +3816,15 @@ product VIATECH VT86C926 0x0926  VT86C926
product VIATECH        VT82C570M       0x1000  VT82C570M (Apollo) Host-PCI Bridge
product VIATECH VT82C570MV     0x1006  VT82C570M (Apollo) PCI-ISA Bridge
product VIATECH KT880_1                0x1269  KT880 CPU to PCI Bridge
+product VIATECH VT3351_HB_1351 0x1351  VT3351 Host Bridge
product VIATECH VT82C586_IDE   0x1571  VT82C586 IDE Controller
product VIATECH VT82C595_2     0x1595  VT82C595 (Apollo VP2) Host-PCI Bridge
product VIATECH KT880_2                0x2269  KT880 CPU to PCI Bridge
+product VIATECH VT3351_HB_2351 0x2351  VT3351 Host Bridge
+product VIATECH VT8251_PPB_287A        0x287a  VT8251 PCI-PCI Bridge
+product VIATECH VT8251_PCIE1   0x287c  VT8251 PCIE Root Port1
+product VIATECH VT8251_PCIE2   0x287d  VT8251 PCIE Root Port2
+product VIATECH VT8251_VLINK   0x287e  VT8251 Ultra VLINK Controller
product VIATECH VT83C572       0x3038  VT83C572 USB Controller
product VIATECH VT82C586_PWR   0x3040  VT82C586 Power Management Controller
product VIATECH VT3043         0x3043  VT3043 (Rhine) 10/100 Ethernet
@@ -3652,9 +3845,11 @@ product VIATECH VT8623_VGA       0x3122  VT8623
product VIATECH VT8623         0x3123  VT8623 (Apollo CLE266) CPU-PCI Bridge
product VIATECH VT8233A                0x3147  VT8233A PCI-ISA Bridge
product VIATECH VT8237_SATA    0x3149  VT8237 Integrated SATA Controller
+product VIATECH K8HTB          0x3188  K8HTB Host
+product VIATECH VT6421_RAID    0x3249  VT6421 Serial RAID Controller
product        VIATECH VT3314_IG       0x3344  VT3314 CN900 UniChrome Integrated Graphics
product VIATECH VT8237R_SATA   0x3349  VT8237R Integrated SATA Controller
-product VIATECH VT6421_RAID    0x3249  VT6421 Serial RAID Controller
+product VIATECH VT3351_HB_3351 0x3351  VT3351 Host Bridge
product VIATECH KT880_3                0x3269  KT880 CPU to PCI bridge
product VIATECH VT8235         0x3177  VT8235 (Apollo KT400) PCI-ISA Bridge
product VIATECH VT8377         0x3189  VT8377 Apollo KT400 CPU to PCI Bridge
@@ -3662,10 +3857,16 @@ product VIATECH VT8378          0x3205  VT8378 Ap
product VIATECH VT8237         0x3227  VT8237 (Apollo KT600) PCI-ISA Bridge
product        VIATECH VT8237A_HDA     0x3288  VT8237A/VT8251 High Definition Audio Controller
product        VIATECH VT8237A_ISA     0x3337  VT8237A/VT82C586A PCI-ISA Bridge
+product VIATECH VT8237S_ISA    0x3372  VT8237S PCI-ISA Bridge
+product VIATECH VT8237A_PPB    0x337a  VT8237A PCI-PCI Bridge
+product VIATECH VT8237A_HB     0x337b  VT8237A Host Bridge
product VIATECH KT880_4                0x4269  KT880 CPU to PCI Bridge
+product VIATECH VT3351_HB_4351 0x4351  VT3351 Host Bridge
+product VIATECH VT3351_IOAPIC  0x5351  VT3351 I/O APIC Interrupt Controller
product VIATECH VT86C100A      0x6100  VT86C100A (Rhine-II) 10/100 Ethernet
product VIATECH VT8378_IG      0x7205  VT8378 KM400 UniChrome Integrated Graphics
product VIATECH KT880_5                0x7269  KT880 CPU to PCI Bridge
+product VIATECH VT3351_HB_7351 0x7351  VT3351 Host Bridge
product VIATECH VT8231         0x8231  VT8231 PCI-ISA Bridge
product VIATECH VT8231_PWR     0x8235  VT8231 Power Management Controller
product VIATECH VT8363_PPB     0x8305  VT8363 (Apollo KT133) PCI to AGP Bridge
@@ -3674,10 +3875,17 @@ product VIATECH VT8501AGP       0x8501  VT8501
product VIATECH VT82C597AGP    0x8597  VT82C597 (Apollo VP3) CPU-AGP Bridge
product VIATECH VT82C598AGP    0x8598  VT82C598 (Apollo MVP3) CPU-AGP Bridge
product VIATECH VT8605AGP      0x8605  VT8605 (Apollo ProMedia 133) Host-AGP Bridge
+product VIATECH K8T890_PPB_A238        0xa238  K8T890 PCI-PCI Bridge
product VIATECH VT8633AGP      0xb091  VT8633 (Apollo Pro 266) CPU-AGP Bridge
product VIATECH VT8366AGP      0xb099  VT8366 (Apollo KT266) CPU-AGP Bridge
product VIATECH VT8377AGP      0xb168  VT8377 CPU-AGP Bridge
+product VIATECH K8HTB_AGP      0xb188  K8HTB AGP
product VIATECH VT8377CEAGP    0xb198  VT8377CE CPU-AGP Bridge
+product VIATECH VT3237_PPB     0xb999  K8T890 North / VT8237 South PCI-PCI Bridge
+product VIATECH K8T890_PPB_C238        0xc238  K8T890 PCI-PCI Bridge
+product VIATECH K8T890_PPB_D238        0xd238  K8T890 PCI-PCI Bridge
+product VIATECH K8T890_PPB_E238        0xe238  K8T890 PCI-PCI Bridge
+product VIATECH K8T890_PPB_F238        0xf238  K8T890 PCI-PCI Bridge

/* Vortex Computer Systems products */
product VORTEX GDT_60x0                0x0000  GDT6000/6020/6050
@@ -3800,6 +4008,7 @@ product WORKBIT NJSC32UDE_LOGITEC 0xf012
product WORKBIT NJSC32UDE_LOGITEC2     0xf013  NinjaSCSI-32UDE SCSI (LOGITEC2)
product WORKBIT NJSC32UDE_BUFFALO      0xf015  NinjaSCSI-32UDE SCSI (BUFFALO)
product WORKBIT NPATA32_CF32A          0xf021  CF32A CompactFlash Adapter
+product WORKBIT NPATA32_CF32A_BUFFALO  0xf024  CF32A CF Adapter (BUFFALO)
product WORKBIT NPATA32_KME            0xf02c  NPATA-32 IDE (KME)

/* Xircom products */
Index: sys/dev/pci/pcidevs.h
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/pcidevs.h,v
retrieving revision 1.854.2.19
diff -u -p -u -r1.854.2.19 pcidevs.h
--- sys/dev/pci/pcidevs.h       23 Feb 2008 14:22:44 -0000      1.854.2.19
+++ sys/dev/pci/pcidevs.h       7 Mar 2008 08:41:20 -0000
@@ -1,10 +1,10 @@
-/*     $NetBSD: pcidevs.h,v 1.854.2.19 2008/02/23 14:22:44 bouyer Exp $        */
+/*     $NetBSD$        */

/*
 * THIS FILE AUTOMATICALLY GENERATED.  DO NOT EDIT.
 *
 * generated from:
- *     NetBSD
+ *     NetBSD: pcidevs,v 1.855.2.19 2008/02/23 14:21:50 bouyer Exp
 */

/*
@@ -562,6 +562,7 @@
#define        PCI_VENDOR_ICENSEMBLE   0x1412          /* IC Ensemble / VIA Technologies */
#define        PCI_VENDOR_MICROSOFT    0x1414          /* Microsoft */
#define        PCI_VENDOR_OXFORDSEMI   0x1415          /* Oxford Semiconductor */
+#define        PCI_VENDOR_CHELSIO      0x1425          /* Chelsio Communications */
#define        PCI_VENDOR_TAMARACK     0x143d          /* Tamarack Microelectronics */
#define        PCI_VENDOR_SAMSUNGELEC3 0x144d          /* Samsung Electronics (3rd vendor ID) */
#define        PCI_VENDOR_ASKEY        0x144f          /* Askey Computer */
@@ -607,6 +608,7 @@
#define        PCI_VENDOR_S2IO 0x17d5          /* S2io Technologies */
#define        PCI_VENDOR_LINKSYS2     0x17fe          /* Linksys */
#define        PCI_VENDOR_RALINK       0x1814          /* Ralink Technologies */
+#define        PCI_VENDOR_ATTANSIC     0x1969          /* Attansic Technologies */
#define        PCI_VENDOR_SYMPHONY2    0x1c1c          /* Symphony Labs (2nd PCI Vendor ID) */
#define        PCI_VENDOR_TEKRAM2      0x1de1          /* Tekram Technology (2nd PCI Vendor ID) */
#define        PCI_VENDOR_DATUM        0x12e2          /* Datum Inc. Bancomm-Timing Division */
@@ -767,6 +769,7 @@
#define        PCI_PRODUCT_ALI_M1541   0x1541          /* M1541 Host-PCI Bridge */
#define        PCI_PRODUCT_ALI_M1543   0x1533          /* M1543 PCI-ISA Bridge */
#define        PCI_PRODUCT_ALI_M1563   0x1563          /* M1563 PCI-ISA Bridge */
+#define        PCI_PRODUCT_ALI_M1689   0x1689          /* M1689 Host-PCI Bridge */
#define        PCI_PRODUCT_ALI_M3309   0x3309          /* M3309 MPEG Decoder */
#define        PCI_PRODUCT_ALI_M4803   0x5215          /* M4803 */
#define        PCI_PRODUCT_ALI_M5257   0x5257          /* M5257 PCI Software Modem */
@@ -775,6 +778,7 @@
#define        PCI_PRODUCT_ALI_M5239   0x5239          /* M5239 USB 2.0 Host Controller */
#define        PCI_PRODUCT_ALI_M5243   0x5243          /* M5243 PCI-AGP Bridge */
#define        PCI_PRODUCT_ALI_M5249   0x5249          /* M5249 Hypertransport to PCI bridge */
+#define        PCI_PRODUCT_ALI_M5261   0x5261          /* M5261 Tulip Ethernet Controller */
#define        PCI_PRODUCT_ALI_M5451   0x5451          /* M5451 AC-Link Controller Audio Device */
#define        PCI_PRODUCT_ALI_M5453   0x5453          /* M5453 AC-Link Controller Modem Device */
#define        PCI_PRODUCT_ALI_M5455   0x5455          /* M5455 AC-Link Controller Audio Device */
@@ -838,6 +842,7 @@
#define        PCI_PRODUCT_ADMTEK_AL981        0x0981          /* AL981 (Comet) 10/100 Ethernet */
#define        PCI_PRODUCT_ADMTEK_AN983        0x0985          /* AN983 (Centaur-P) 10/100 Ethernet */
#define        PCI_PRODUCT_ADMTEK_AN985        0x1985          /* AN985 (Centaur-C) 10/100 Ethernet */
+#define        PCI_PRODUCT_ADMTEK_ADM5120      0x5120          /* Infineon ADM5120 PCI host bridge */
#define        PCI_PRODUCT_ADMTEK_ADM8211      0x8201          /* ADM8211 11Mbps 802.11b WLAN */
#define        PCI_PRODUCT_ADMTEK_ADM9511      0x9511          /* ADM9511 (Centaur-II) 10/100 Ethernet */
#define        PCI_PRODUCT_ADMTEK_ADM9513      0x9513          /* ADM9513 (Centaur-II) 10/100 Ethernet */
@@ -876,31 +881,53 @@
#define        PCI_PRODUCT_ALTIMA_AC9100       0x03ea          /* AC9100 Gigabit Ethernet */

/* AMD products */
-#define        PCI_PRODUCT_AMD_AMD64_HT        0x1100          /* AMD64 HyperTransport configuration */
-#define        PCI_PRODUCT_AMD_AMD64_ADDR      0x1101          /* AMD64 Address Map configuration */
-#define        PCI_PRODUCT_AMD_AMD64_DRAM      0x1102          /* AMD64 DRAM configuration */
-#define        PCI_PRODUCT_AMD_AMD64_MISC      0x1103          /* AMD64 Miscellaneous configuration */
+#define        PCI_PRODUCT_AMD_AMD64_HT        0x1100          /* K8 AMD64 HyperTransport configuration */
+#define        PCI_PRODUCT_AMD_AMD64_ADDR      0x1101          /* K8 AMD64 Address Map configuration */
+#define        PCI_PRODUCT_AMD_AMD64_DRAM      0x1102          /* K8 AMD64 DRAM configuration */
+#define        PCI_PRODUCT_AMD_AMD64_MISC      0x1103          /* K8 AMD64 Miscellaneous configuration */
+#define        PCI_PRODUCT_AMD_AMD64_F10_HT    0x1200          /* AMD64 Family10h HyperTransport configuration */
+#define        PCI_PRODUCT_AMD_AMD64_F10_ADDR  0x1201          /* AMD64 Family10h Address Map configuration */
+#define        PCI_PRODUCT_AMD_AMD64_F10_DRAM  0x1202          /* AMD64 Family10h DRAM configuration */
+#define        PCI_PRODUCT_AMD_AMD64_F10_MISC  0x1203          /* AMD64 Family10h Miscellaneous configuration */
+#define        PCI_PRODUCT_AMD_AMD64_F10_LINK  0x1204          /* AMD64 Family10h Link configuration */
+#define        PCI_PRODUCT_AMD_AMD64_F11_HT    0x1300          /* AMD64 Family11h HyperTransport configuration */
+#define        PCI_PRODUCT_AMD_AMD64_F11_ADDR  0x1301          /* AMD64 Family11h Address Map configuration */
+#define        PCI_PRODUCT_AMD_AMD64_F11_DRAM  0x1302          /* AMD64 Family11h DRAM configuration */
+#define        PCI_PRODUCT_AMD_AMD64_F11_MISC  0x1303          /* AMD64 Family11h Miscellaneous configuration */
+#define        PCI_PRODUCT_AMD_AMD64_F11_LINK  0x1304          /* AMD64 Family11h Link configuration */
#define        PCI_PRODUCT_AMD_PCNET_PCI       0x2000          /* PCnet-PCI Ethernet */
#define        PCI_PRODUCT_AMD_PCNET_HOME      0x2001          /* PCnet-Home HomePNA Ethernet */
+#define        PCI_PRODUCT_AMD_AM_1771_MBW     0x2003          /* Alchemy AM 1771 MBW */
#define        PCI_PRODUCT_AMD_PCSCSI_PCI      0x2020          /* PCscsi-PCI SCSI */
#define        PCI_PRODUCT_AMD_GEODELX_PCHB    0x2080          /* Geode LX Host-PCI Bridge */
#define        PCI_PRODUCT_AMD_GEODELX_VGA     0x2081          /* Geode LX VGA Controller */
#define        PCI_PRODUCT_AMD_GEODELX_AES     0x2082          /* Geode LX AES Security Block */
+#define        PCI_PRODUCT_AMD_CS5536_PCISB    0x208f          /* CS5536 GeodeLink PCI South Bridge */
#define        PCI_PRODUCT_AMD_CS5536_PCIB     0x2090          /* CS5536 PCI-ISA Bridge */
+#define        PCI_PRODUCT_AMD_CS5536_FLASH    0x2091          /* CS5536 Flash */
+#define        PCI_PRODUCT_AMD_CS5536_AUDIO    0x2093          /* CS5536 Audio */
#define        PCI_PRODUCT_AMD_CS5536_OHCI     0x2094          /* CS5536 OHCI USB Controller */
#define        PCI_PRODUCT_AMD_CS5536_EHCI     0x2095          /* CS5536 EHCI USB Controller */
+#define        PCI_PRODUCT_AMD_CS5536_UDC      0x2096          /* CS5536 UDC */
+#define        PCI_PRODUCT_AMD_CS5536_UOC      0x2097          /* CS5536 UOC */
#define        PCI_PRODUCT_AMD_CS5536_IDE      0x209a          /* CS5536 IDE Controller */
#define        PCI_PRODUCT_AMD_SC520_SC        0x3000          /* Elan SC520 System Controller */
#define        PCI_PRODUCT_AMD_SC751_SC        0x7006          /* AMD751 System Controller */
#define        PCI_PRODUCT_AMD_SC751_PPB       0x7007          /* AMD751 PCI-PCI Bridge */
-#define        PCI_PRODUCT_AMD_PBC756_ISA      0x7408          /* AMD756 PCI-ISA Bridge */
-#define        PCI_PRODUCT_AMD_PBC756_IDE      0x7409          /* AMD756 IDE controller */
-#define        PCI_PRODUCT_AMD_PBC756_PMC      0x740b          /* AMD756 Power Management Controller */
-#define        PCI_PRODUCT_AMD_PBC756_USB      0x740c          /* AMD756 USB Host Controller */
+#define        PCI_PRODUCT_AMD_IGR4_AGP        0x700a          /* AMD IGR4 AGP Bridge */
+#define        PCI_PRODUCT_AMD_IGR4_PPB        0x700b          /* AMD IGR4 PCI-PCI Bridge */
#define        PCI_PRODUCT_AMD_SC762_NB        0x700c          /* AMD762 Northbridge */
#define        PCI_PRODUCT_AMD_SC762_PPB       0x700d          /* AMD762 AGP Bridge */
#define        PCI_PRODUCT_AMD_SC761_SC        0x700e          /* AMD761 System Controller */
#define        PCI_PRODUCT_AMD_SC761_PPB       0x700f          /* AMD761 PCI-PCI Bridge */
+#define        PCI_PRODUCT_AMD_PBC755_ISA      0x7400          /* AMD755 PCI-ISA Bridge */
+#define        PCI_PRODUCT_AMD_PBC755_IDE      0x7401          /* AMD755 IDE controller */
+#define        PCI_PRODUCT_AMD_PBC755_PMC      0x7403          /* AMD755 ACPI controller */
+#define        PCI_PRODUCT_AMD_PBC755_USB      0x7404          /* AMD755 USB Host controller */
+#define        PCI_PRODUCT_AMD_PBC756_ISA      0x7408          /* AMD756 PCI-ISA Bridge */
+#define        PCI_PRODUCT_AMD_PBC756_IDE      0x7409          /* AMD756 IDE controller */
+#define        PCI_PRODUCT_AMD_PBC756_PMC      0x740b          /* AMD756 Power Management Controller */
+#define        PCI_PRODUCT_AMD_PBC756_USB      0x740c          /* AMD756 USB Host Controller */
#define        PCI_PRODUCT_AMD_PBC766_ISA      0x7410          /* AMD766 Southbridge */
#define        PCI_PRODUCT_AMD_PBC766_IDE      0x7411          /* AMD766 IDE controller */
#define        PCI_PRODUCT_AMD_PBC766_PMC      0x7413          /* AMD766 Power Management Controller */
@@ -916,14 +943,19 @@
#define        PCI_PRODUCT_AMD_PCIX8131_APIC   0x7451          /* AMD8131 IO Apic */
#define        PCI_PRODUCT_AMD_AGP8151_DEV     0x7454          /* AMD8151 AGP Device */
#define        PCI_PRODUCT_AMD_AGP8151_PPB     0x7455          /* AMD8151 AGP Bridge */
-#define        PCI_PRODUCT_AMD_PCIX_APIC       0x7459          /* AMD PCI-X IOAPIC */
+#define        PCI_PRODUCT_AMD_PCIX_PPB        0x7458          /* AMD8123 PCI-X Bridge */
+#define        PCI_PRODUCT_AMD_PCIX_APIC       0x7459          /* AMD8132 PCI-X IOAPIC */
#define        PCI_PRODUCT_AMD_PBC8111 0x7460          /* AMD8111 I/O Hub */
+#define        PCI_PRODUCT_AMD_PBC8111_USB_7461        0x7461          /* AMD8111 7461 USB Host Controller */
+#define        PCI_PRODUCT_AMD_PBC8111_ETHER   0x7462          /* AMD8111 Ethernet */
#define        PCI_PRODUCT_AMD_PBC8111_USB     0x7464          /* AMD8111 USB Host Controller */
#define        PCI_PRODUCT_AMD_PBC8111_LPC     0x7468          /* AMD8111 LPC Controller */
#define        PCI_PRODUCT_AMD_PBC8111_IDE     0x7469          /* AMD8111 IDE Controller */
#define        PCI_PRODUCT_AMD_PBC8111_SMB     0x746a          /* AMD8111 SMBus Controller */
#define        PCI_PRODUCT_AMD_PBC8111_ACPI    0x746b          /* AMD8111 ACPI Controller */
#define        PCI_PRODUCT_AMD_PBC8111_AC      0x746d          /* AMD8111 AC97 Audio */
+#define        PCI_PRODUCT_AMD_PBC8111_MC97    0x746e          /* AMD8111 MC97 Modem */
+#define        PCI_PRODUCT_AMD_PBC8111_AC_756b 0x756b          /* AMD8111 756b ACPI Controller */

/* American Megatrends products */
#define        PCI_PRODUCT_AMI_MEGARAID        0x9010          /* MegaRAID */
@@ -1013,12 +1045,36 @@
#define        PCI_PRODUCT_ARECA_ARC1680       0x1680          /* ARC-1680 */
#define        PCI_PRODUCT_ARECA_ARC1681       0x1681          /* ARC-1681 */

+/* Areca products */
+#define        PCI_PRODUCT_ARECA_ARC1110       0x1110          /* ARC-1110 */
+#define        PCI_PRODUCT_ARECA_ARC1120       0x1120          /* ARC-1120 */
+#define        PCI_PRODUCT_ARECA_ARC1130       0x1130          /* ARC-1130 */
+#define        PCI_PRODUCT_ARECA_ARC1160       0x1160          /* ARC-1160 */
+#define        PCI_PRODUCT_ARECA_ARC1170       0x1170          /* ARC-1170 */
+#define        PCI_PRODUCT_ARECA_ARC1200       0x1200          /* ARC-1200 */
+#define        PCI_PRODUCT_ARECA_ARC1200_B     0x1201          /* ARC-1200 rev B */
+#define        PCI_PRODUCT_ARECA_ARC1202       0x1202          /* ARC-1202 */
+#define        PCI_PRODUCT_ARECA_ARC1210       0x1210          /* ARC-1210 */
+#define        PCI_PRODUCT_ARECA_ARC1220       0x1220          /* ARC-1220 */
+#define        PCI_PRODUCT_ARECA_ARC1230       0x1230          /* ARC-1230 */
+#define        PCI_PRODUCT_ARECA_ARC1260       0x1260          /* ARC-1260 */
+#define        PCI_PRODUCT_ARECA_ARC1270       0x1270          /* ARC-1270 */
+#define        PCI_PRODUCT_ARECA_ARC1280       0x1280          /* ARC-1280 */
+#define        PCI_PRODUCT_ARECA_ARC1380       0x1380          /* ARC-1380 */
+#define        PCI_PRODUCT_ARECA_ARC1381       0x1381          /* ARC-1381 */
+#define        PCI_PRODUCT_ARECA_ARC1680       0x1680          /* ARC-1680 */
+#define        PCI_PRODUCT_ARECA_ARC1681       0x1681          /* ARC-1681 */
+
/* ASIX Electronics products */
#define        PCI_PRODUCT_ASIX_AX88140A       0x1400          /* AX88140A 10/100 Ethernet */

/* Asustek products */
#define        PCI_PRODUCT_ASUSTEK_HFCPCI      0x0675          /* ISDN */

+/* Attansic Technology Corp. */
+#define        PCI_PRODUCT_ATTANSIC_ETHERNET_GIGA      0x1048          /* L1 Gigabit Ethernet Adapter */
+#define        PCI_PRODUCT_ATTANSIC_ETHERNET_100       0x2048          /* L2 100 Mbit Ethernet Adapter */
+
/* ATI products */
#define        PCI_PRODUCT_ATI_RADEON_RV380_3150       0x3150          /* Radeon Mobility X600 (M24) 3150 */
#define        PCI_PRODUCT_ATI_RADEON_RV380_3154       0x3154          /* FireGL M24 GL 3154 */
@@ -1073,7 +1129,18 @@
#define        PCI_PRODUCT_ATI_SB400_SATA_2    0x437a          /* SB400 SATA Controller */
#define        PCI_PRODUCT_ATI_SB600_SATA_1    0x4380          /* SB600 SATA Controller */
#define        PCI_PRODUCT_ATI_SB600_SATA_2    0x4381          /* SB600 SATA Controller */
+#define        PCI_PRODUCT_ATI_SB600_AC97_AUDIO        0x4382          /* SB600 AC97 Audio */
+#define        PCI_PRODUCT_ATI_SB600_AZALIA    0x4383          /* SB600 Azalia */
+#define        PCI_PRODUCT_ATI_SB600_PPB_4384  0x4384          /* SB600 PCI to PCI Bridge */
+#define        PCI_PRODUCT_ATI_SB600_SMBUS     0x4385          /* SB600 SMBus Controller */
+#define        PCI_PRODUCT_ATI_SB600_USB_EHCI  0x4386          /* SB600 USB EHCI Controller */
+#define        PCI_PRODUCT_ATI_SB600_USB_OHCI0 0x4387          /* SB600 USB OHCI0 Controller */
+#define        PCI_PRODUCT_ATI_SB600_USB_OHCI1 0x4388          /* SB600 USB OHCI1 Controller */
+#define        PCI_PRODUCT_ATI_SB600_USB_OHCI2 0x4389          /* SB600 USB OHCI2 Controller */
+#define        PCI_PRODUCT_ATI_SB600_USB_OHCI3 0x438a          /* SB600 USB OHCI3 Controller */
+#define        PCI_PRODUCT_ATI_SB600_USB_OHCI4 0x438b          /* SB600 USB OHCI4 Controller */
#define        PCI_PRODUCT_ATI_IXP_IDE_600     0x438c          /* SB600 IXP IDE Controller */
+#define        PCI_PRODUCT_ATI_SB600_PLB_438D  0x438d          /* SB600 PCI to LPC Bridge */
#define        PCI_PRODUCT_ATI_MACH64_CT       0x4354          /* Mach64 CT */
#define        PCI_PRODUCT_ATI_MACH64_CX       0x4358          /* Mach64 CX */
#define        PCI_PRODUCT_ATI_RADEON_RS250_D7 0x4437          /* Radeon Mobility 7000 IGP */
@@ -1179,6 +1246,7 @@
#define        PCI_PRODUCT_ATI_RADEON_RV200_QX 0x5158          /* Radeon 7500 QX */
#define        PCI_PRODUCT_ATI_RADEON_RV100_QY 0x5159          /* Radeon 7000/VE QY */
#define        PCI_PRODUCT_ATI_RADEON_RV100_QZ 0x515a          /* Radeon 7000/VE QZ */
+#define        PCI_PRODUCT_ATI_ES1000  0x515e          /* ES1000 */
#define        PCI_PRODUCT_ATI_RADEON_9100_S   0x516d          /* Radeon 9100 Series Secondary */
#define        PCI_PRODUCT_ATI_RAGEGLPCI       0x5245          /* Rage 128 GL PCI */
#define        PCI_PRODUCT_ATI_RAGEGLAGP       0x5246          /* Rage 128 GL AGP 2x */
@@ -1210,20 +1278,27 @@
#define        PCI_PRODUCT_ATI_RS300_AGP       0x5838          /* RS300 AGP Interface */
#define        PCI_PRODUCT_ATI_RADEON_9200_PRO_S       0x5940          /* Radeon 9200 Pro Secondary */
#define        PCI_PRODUCT_ATI_RADEON_9200_S   0x5941          /* Radeon 9200 Secondary */
+#define        PCI_PRODUCT_ATI_RS480_HB        0x5950          /* RS480 Host Bridge */
+#define        PCI_PRODUCT_ATI_RD580   0x5952          /* RD580 CrossFire Xpress 3200 Host Bridge */
+#define        PCI_PRODUCT_ATI_RADEON_RV370_5954       0x5954          /* Radeon Xpress 200G Series */
#define        PCI_PRODUCT_ATI_RADEON_RV280_5960       0x5960          /* Radeon 9200PRO 5960 */
#define        PCI_PRODUCT_ATI_RADEON_RV280_5961       0x5961          /* Radeon 9200 5961 */
#define        PCI_PRODUCT_ATI_RADEON_RV280_5962       0x5962          /* Radeon 9200 5962 */
#define        PCI_PRODUCT_ATI_RADEON_RV280_5963       0x5963          /* Radeon 9200 5963 */
#define        PCI_PRODUCT_ATI_RADEON_RV280_5964       0x5964          /* Radeon 9200SE 5964 */
-#define        PCI_PRODUCT_ATI_RS480_HB        0x5950          /* RS480 Host Bridge */
#define        PCI_PRODUCT_ATI_RS482M  0x5975          /* Radeon Xpress Series (RS482M) */
#define        PCI_PRODUCT_ATI_RS480_XRP       0x5a34          /* RS480 PCI Express Root Port */
#define        PCI_PRODUCT_ATI_RS480_PPB_5A36  0x5a36          /* RS480 PCI Express Bridge */
+#define        PCI_PRODUCT_ATI_RS480_PPB_5A37  0x5a37          /* RS480 PCI Express Bridge */
+#define        PCI_PRODUCT_ATI_RS480_PPB_5A38  0x5a38          /* RS480 PCI Express Bridge */
#define        PCI_PRODUCT_ATI_RS480_PPB_5A3F  0x5a3f          /* RS480 PCI Express Bridge */
#define        PCI_PRODUCT_ATI_RADEON_RV370_5B60       0x5b60          /* Radeon X300 (RV370) 5B60 */
+#define        PCI_PRODUCT_ATI_RADEON_RV380_5B62       0x5b62          /* Radeon X600 PCI Express */
+#define        PCI_PRODUCT_ATI_RADEON_RV370_5B63       0x5b63          /* Radeon Sapphire X550 Silent */
#define        PCI_PRODUCT_ATI_RADEON_RV370_5B64       0x5b64          /* FireGL V3100 (RV370) 5B64 */
-#define        PCI_PRODUCT_ATI_RADEON_RV370_5B65       0x5b64          /* FireGL D1100 (RV370) 5B65 */
+#define        PCI_PRODUCT_ATI_RADEON_RV370_5B65       0x5b65          /* FireGL D1100 (RV370) 5B65 */
#define        PCI_PRODUCT_ATI_RADEON_X300_S   0x5b70          /* Radeon X300 Series Secondary */
+#define        PCI_PRODUCT_ATI_RADEON_RV370_5B73       0x5b73          /* Radeon RV370 secondary */
#define        PCI_PRODUCT_ATI_RADEON_RV280_5C61       0x5c61          /* Radeon Mobility 9200 (M9+) */
#define        PCI_PRODUCT_ATI_RADEON_RV280_5C63       0x5c63          /* Radeon Mobility 9200 (M9+) */
#define        PCI_PRODUCT_ATI_RADEON_9200SE_S 0x5d44          /* Radeon 9200SE Secondary */
@@ -1232,8 +1307,12 @@
#define        PCI_PRODUCT_ATI_RADEON_X850XT_S 0x5d72          /* Radeon X850 XT Secondary */
#define        PCI_PRODUCT_ATI_RADEON_X700     0x5e4b          /* Radeon X700 Pro */
#define        PCI_PRODUCT_ATI_RADEON_X700_S   0x5e6b          /* Radeon X700 Pro Secondary */
+#define        PCI_PRODUCT_ATI_RADEON_X1300    0x7146          /* Radeon X1300 Series (RV515) */
+#define        PCI_PRODUCT_ATI_RADEON_X1300_S  0x7166          /* Radeon X1300 Series (RV515) Secondary */
#define        PCI_PRODUCT_ATI_RADEON_RS300_7834       0x7834          /* Radeon 9100 PRO IGP */
#define        PCI_PRODUCT_ATI_RADEON_RS300_7835       0x7835          /* Radeon 9200 IGP */
+#define        PCI_PRODUCT_ATI_RADEON_HD2600_XT        0x9588          /* Radeon HD2600 XT GDDR3 */
+#define        PCI_PRODUCT_ATI_RADEON_HD2600_HD        0xaa08          /* Radeon HD2600 HD Audio Controller */

/* Auravision products */
#define        PCI_PRODUCT_AURAVISION_VXP524   0x01f7          /* VxP524 PCI Video Processor */
@@ -1405,6 +1484,17 @@
/* Cavium products */
#define        PCI_PRODUCT_CAVIUM_NITROX       0x0001          /* Nitrox XL */

+/* Chelsio products */
+#define        PCI_PRODUCT_CHELSIO_T302E       0x0021          /* T302e */
+#define        PCI_PRODUCT_CHELSIO_T310E       0x0022          /* T310e */
+#define        PCI_PRODUCT_CHELSIO_T320X       0x0023          /* T320x */
+#define        PCI_PRODUCT_CHELSIO_T302X       0x0024          /* T302x */
+#define        PCI_PRODUCT_CHELSIO_T320E       0x0025          /* T320e */
+#define        PCI_PRODUCT_CHELSIO_T310X       0x0026          /* T310x */
+#define        PCI_PRODUCT_CHELSIO_T3B10       0x0030          /* T3B10 */
+#define        PCI_PRODUCT_CHELSIO_T3B20       0x0031          /* T3B20 */
+#define        PCI_PRODUCT_CHELSIO_T3B02       0x0032          /* T3B02 */
+
/* Chips and Technologies products */
#define        PCI_PRODUCT_CHIPS_64310 0x00b8          /* 64310 */
#define        PCI_PRODUCT_CHIPS_69000 0x00c0          /* 69000 */
@@ -1457,10 +1547,11 @@
#define        PCI_PRODUCT_CMDTECH_673 0x0673          /* USB0673 */
#define        PCI_PRODUCT_CMDTECH_680 0x0680          /* SiI0680 */
#define        PCI_PRODUCT_CMDTECH_3112        0x3112          /* SiI3112 SATALink */
-#define        PCI_PRODUCT_CMDTECH_3512        0x3512          /* SiI3512 SATALink */
#define        PCI_PRODUCT_CMDTECH_3114        0x3114          /* SiI3114 SATALink */
#define        PCI_PRODUCT_CMDTECH_3124        0x3124          /* SiI3124 SATALink */
#define        PCI_PRODUCT_CMDTECH_3132        0x3132          /* SiI3132 SATALink */
+#define        PCI_PRODUCT_CMDTECH_3512        0x3512          /* SiI3512 SATALink */
+#define        PCI_PRODUCT_CMDTECH_3531        0x3531          /* SiI3531 SATALink */

/* C-Media products */
#define        PCI_PRODUCT_CMEDIA_CMI8338A     0x0100          /* CMI8338A PCI Audio Device */
@@ -1544,6 +1635,10 @@
#define        PCI_PRODUCT_CONEXANT_SOFTK56    0x2443          /* SoftK56 PCI Software Modem */
#define        PCI_PRODUCT_CONEXANT_56KFAXMODEM        0x1085          /* HW 56K Fax Modem */
#define        PCI_PRODUCT_CONEXANT_LANFINITY  0x1803          /* LANfinity MiniPCI 10/100 Ethernet */
+#define        PCI_PRODUCT_CONEXANT_CX2388X    0x8800          /* CX23880/1/2/3 PCI Video/Audio Decoder */
+#define        PCI_PRODUCT_CONEXANT_CX2388XAUDIO       0x8801          /* CX23880/1/2/3 PCI Audio Port */
+#define        PCI_PRODUCT_CONEXANT_CX2388XMPEG        0x8802          /* CX23880/1/2/3 PCI MPEG Port */
+#define        PCI_PRODUCT_CONEXANT_CX2388XIR  0x8804          /* CX23880/1/2/3 PCI IR Port */

/* Contaq Microsystems products */
#define        PCI_PRODUCT_CONTAQ_82C599       0x0600          /* 82C599 PCI-VLB Bridge */
@@ -1819,6 +1914,10 @@
#define        PCI_PRODUCT_MARVELL_88SX5081    0x5081          /* 88SX5081 SATA */
#define        PCI_PRODUCT_MARVELL_88SX6041    0x6041          /* 88SX6041 SATA */
#define        PCI_PRODUCT_MARVELL_88SX6081    0x6081          /* 88SX6041 SATA */
+#define        PCI_PRODUCT_MARVELL_88SE6101    0x6101          /* 88SE6101 single-port PATA133 Controller */
+#define        PCI_PRODUCT_MARVELL_88SE6121    0x6121          /* 88SE6121 SATA II Controller */
+#define        PCI_PRODUCT_MARVELL_88SE614X    0x6141          /* 88SE614X SATA II PCI-E Controller */
+#define        PCI_PRODUCT_MARVELL_88SE6145    0x6145          /* 88SE6145 SATA II PCI-E Controller */
#define        PCI_PRODUCT_MARVELL_GT64130     0x6320          /* GT-64130 System Controller */
#define        PCI_PRODUCT_MARVELL_GT64260     0x6430          /* GT-64260 System Controller */
#define        PCI_PRODUCT_MARVELL_GT64360     0x6460          /* MV6436x System Controller */
@@ -1895,24 +1994,47 @@
#define        PCI_PRODUCT_IBM_MCABRIDGE       0x0002          /* MCA Bridge */
#define        PCI_PRODUCT_IBM_ALTALITE        0x0005          /* CPU Bridge - Alta Lite */
#define        PCI_PRODUCT_IBM_ALTAMP  0x0007          /* CPU Bridge - Alta MP */
-#define        PCI_PRODUCT_IBM_ISABRIDGE       0x000a          /* ISA Bridge w/PnP */
+#define        PCI_PRODUCT_IBM_ISABRIDGE       0x000a          /* Fire Coral ISA Bridge w/PnP */
+#define        PCI_PRODUCT_IBM_POWERWAVE       0x0013          /* PowerWave Graphics Adapter */
+#define        PCI_PRODUCT_IBM_IDAHO   0x0015          /* Idaho PCI Bridge */
#define        PCI_PRODUCT_IBM_CPUBRIDGE       0x0017          /* CPU Bridge */
#define        PCI_PRODUCT_IBM_LANSTREAMER     0x0018          /* Auto LANStreamer */
#define        PCI_PRODUCT_IBM_GXT150P 0x001b          /* GXT-150P 2D Accelerator */
+#define        PCI_PRODUCT_IBM_CARRERA 0x001c          /* Carrera PCI Bridge */
+#define        PCI_PRODUCT_IBM_82G2675 0x001d          /* 82G2675 SCSI-2 Fast Controller */
#define        PCI_PRODUCT_IBM_MCABRIDGE2      0x0020          /* MCA Bridge */
#define        PCI_PRODUCT_IBM_82351   0x0022          /* 82351 PCI-PCI Bridge */
+#define        PCI_PRODUCT_IBM_MONNAV  0x002c          /* Montana/Nevada PCI Bridge and Memory Controller */
+#define        PCI_PRODUCT_IBM_PYTHON  0x002d          /* Python PCI-PCI Bridge */
#define        PCI_PRODUCT_IBM_SERVERAID       0x002e          /* ServeRAID */
+#define        PCI_PRODUCT_IBM_GXT250P 0x003c          /* GXT-250P Graphics Adapter */
#define        PCI_PRODUCT_IBM_OLYMPIC 0x003e          /* 16/4 Token Ring */
#define        PCI_PRODUCT_IBM_MIAMI   0x0036          /* Miami/PCI */
#define        PCI_PRODUCT_IBM_82660   0x0037          /* 82660 PowerPC to PCI Bridge and Memory Controller */
#define        PCI_PRODUCT_IBM_MPIC    0x0046          /* MPIC */
#define        PCI_PRODUCT_IBM_TURBOWAYS25     0x0053          /* Turboways 25 ATM */
-#define        PCI_PRODUCT_IBM_GXT800P 0x005e          /* GXT-800P */
+#define        PCI_PRODUCT_IBM_GXT500P 0x0054          /* GXT-500P/GXT550P Graphics Adapter */
+#define        PCI_PRODUCT_IBM_I82557B 0x005c          /* i82557B 10/100 Ethernet */
+#define        PCI_PRODUCT_IBM_GXT800P 0x005e          /* GXT-800P Graphics Adapter */
+#define        PCI_PRODUCT_IBM_EADSPCI 0x008b          /* EADS PCI-PCI Bridge */
+#define        PCI_PRODUCT_IBM_GXT3000P        0x008e          /* GXT-3000P Graphics Adapter */
+#define        PCI_PRODUCT_IBM_GXT3000P2       0x0090          /* GXT-3000P Graphics Adapter(2) */
+#define        PCI_PRODUCT_IBM_GXT2000P        0x00b8          /* GXT-2000P Graphics Adapter */
#define        PCI_PRODUCT_IBM_OLYMPIC2        0x00ce          /* Olympic 2 Token Ring */
+#define        PCI_PRODUCT_IBM_CPC71064        0x00fc          /* CPC710 Dual Bridge and Memory Controller (PCI64) */
+#define        PCI_PRODUCT_IBM_CPC71032        0x0105          /* CPC710 Dual Bridge and Memory Controller (PCI32) */
#define        PCI_PRODUCT_IBM_TPAUDIO 0x0153          /* ThinkPad 600X/A20/T20/T22 Audio */
#define        PCI_PRODUCT_IBM_405GP   0x0156          /* PPC 405GP PCI Bridge */
+#define        PCI_PRODUCT_IBM_GXT4000P        0x016e          /* GXT-4000P Graphics Adapter */
+#define        PCI_PRODUCT_IBM_GXT6000P        0x0170          /* GXT-6000P Graphics Adapter */
+#define        PCI_PRODUCT_IBM_GXT300P 0x017d          /* GXT-300P Graphics Adapter */
#define        PCI_PRODUCT_IBM_133PCIX 0x01a7          /* 133 PCI-X Bridge */
#define        PCI_PRODUCT_IBM_SERVERAID4      0x01bd          /* ServeRAID 4/5 */
+#define        PCI_PRODUCT_IBM_440GP   0x01ef          /* PPC 440GP PCI Bridge */
+#define        PCI_PRODUCT_IBM_IBMETHER        0x01ff          /* 10/100 Ethernet */
+#define        PCI_PRODUCT_IBM_GXT6500P        0x021b          /* GXT-6500P Graphics Adapter */
+#define        PCI_PRODUCT_IBM_GXT4500P        0x021c          /* GXT-4500P Graphics Adapter */
+#define        PCI_PRODUCT_IBM_GXT135P 0x0233          /* GXT-135P Graphics Adapter */
#define        PCI_PRODUCT_IBM_MPIC2   0xffff          /* MPIC-II */

/* IC Ensemble / VIA Technologies products */
@@ -1951,6 +2073,8 @@
/* Intel products */
#define        PCI_PRODUCT_INTEL_80312 0x030d          /* 80312 I/O Companion Chip */
#define        PCI_PRODUCT_INTEL_80321 0x0319          /* 80321 I/O Processor */
+#define        PCI_PRODUCT_INTEL_IOP333_A      0x0370          /* IOP333 PCI Express-to-PCI Bridge #0 */
+#define        PCI_PRODUCT_INTEL_IOP333_B      0x0372          /* IOP333 PCI Express-to-PCI Bridge #1 */
#define        PCI_PRODUCT_INTEL_6700PXH_PCIE0 0x0329          /* 6700PXH PCI Express-to-PCI Bridge #0 */
#define        PCI_PRODUCT_INTEL_6700PXH_PCIE1 0x032a          /* 6700PXH PCI Express-to-PCI Bridge #1 */
#define        PCI_PRODUCT_INTEL_SRCZCRX       0x0407          /* RAID controller */
@@ -2286,6 +2410,10 @@
#define        PCI_PRODUCT_INTEL_82801G_EXP_5  0x27e0          /* 82801GB/GR PCI Express Port #5 */
#define        PCI_PRODUCT_INTEL_82801G_EXP_6  0x27e2          /* 82801GB/GR PCI Express Port #6 */
#define        PCI_PRODUCT_INTEL_82801H_LPC    0x2810          /* 82801H LPC Interface Bridge */
+#define        PCI_PRODUCT_INTEL_82801HEM_LPC  0x2811          /* 82801HEM LPC */
+#define        PCI_PRODUCT_INTEL_82801HH_LPC   0x2812          /* 82801HH LPC Interface Bridge */
+#define        PCI_PRODUCT_INTEL_82801HO_LPC   0x2814          /* 82801HO LPC Interface Bridge */
+#define        PCI_PRODUCT_INTEL_82801HBM_LPC  0x2815          /* 82801HBM LPC Interface Bridge */
#define        PCI_PRODUCT_INTEL_82801H_SATA_1 0x2820          /* 82801H SATA Controller */
#define        PCI_PRODUCT_INTEL_82801H_SATA_AHCI6     0x2821          /* 82801H AHCI SATA Controller with 6 ports */
#define        PCI_PRODUCT_INTEL_82801H_SATA_RAID      0x2822          /* 82801H RAID SATA Controller */
@@ -2309,16 +2437,51 @@
#define        PCI_PRODUCT_INTEL_82801H_EXP_5  0x2847          /* 82801H PCI Express Port #5 */
#define        PCI_PRODUCT_INTEL_82801H_EXP_6  0x2849          /* 82801H PCI Express Port #6 */
#define        PCI_PRODUCT_INTEL_82801H_HDA    0x284b          /* 82801H High Definition Audio Controller */
-#define        PCI_PRODUCT_INTEL_82801I_IGP_C  0x294c          /* 82801I (C) LAN Controller */
#define        PCI_PRODUCT_INTEL_82801H_THERMAL        0x284f          /* 82801H Thermal Controller */
#define        PCI_PRODUCT_INTEL_82801HBM_IDE  0x2850          /* 82801H IDE Controller */
+#define        PCI_PRODUCT_INTEL_82801IH_LPC   0x2912          /* 82801IH LPC Interface Bridge */
+#define        PCI_PRODUCT_INTEL_82801IO_LPC   0x2914          /* 82801IO LPC Interface Bridge */
+#define        PCI_PRODUCT_INTEL_82801IR_LPC   0x2916          /* 82801IR LPC Interface Bridge */
+#define        PCI_PRODUCT_INTEL_82801IB_LPC   0x2918          /* 82801IB LPC Interface Bridge */
#define        PCI_PRODUCT_INTEL_82801I_SATA_1 0x2920          /* 82801I SATA Controller with 4 ports */
#define        PCI_PRODUCT_INTEL_82801I_SATA_2 0x2921          /* 82801I SATA Controller with 2 ports */
+#define        PCI_PRODUCT_INTEL_82801I_SATA_AHCI6     0x2922          /* 82801I AHCI SATA Controller with 6 ports */
+#define        PCI_PRODUCT_INTEL_82801I_SATA_AHCI4     0x2923          /* 82801I AHCI SATA Controller with 4 ports */
#define        PCI_PRODUCT_INTEL_82801I_SATA_3 0x2926          /* 82801I SATA Controller with 2 ports */
+#define        PCI_PRODUCT_INTEL_82801I_SMB    0x2930          /* 82801I SMBus Controller */
+#define        PCI_PRODUCT_INTEL_82801I_THERMAL        0x2932          /* 82801I Thermal Controller */
+#define        PCI_PRODUCT_INTEL_82801I_USB_1  0x2934          /* 82801I USB UHCI Controller */
+#define        PCI_PRODUCT_INTEL_82801I_USB_2  0x2935          /* 82801I USB UHCI Controller */
+#define        PCI_PRODUCT_INTEL_82801I_USB_3  0x2936          /* 82801I USB UHCI Controller */
+#define        PCI_PRODUCT_INTEL_82801I_USB_4  0x2937          /* 82801I USB UHCI Controller */
+#define        PCI_PRODUCT_INTEL_82801I_USB_5  0x2938          /* 82801I USB UHCI Controller */
+#define        PCI_PRODUCT_INTEL_82801I_USB_6  0x2939          /* 82801I USB UHCI Controller */
+#define        PCI_PRODUCT_INTEL_82801I_EHCI_1 0x293a          /* 82801I USB EHCI Controller */
+#define        PCI_PRODUCT_INTEL_82801I_EHCI_2 0x293c          /* 82801I USB EHCI Controller */
+#define        PCI_PRODUCT_INTEL_82801I_HDA    0x293e          /* 82801I High Definition Audio Controller */
+#define        PCI_PRODUCT_INTEL_82801I_EXP_1  0x2940          /* 82801I PCI Express Port #1 */
+#define        PCI_PRODUCT_INTEL_82801I_EXP_2  0x2942          /* 82801I PCI Express Port #2 */
+#define        PCI_PRODUCT_INTEL_82801I_EXP_3  0x2944          /* 82801I PCI Express Port #3 */
+#define        PCI_PRODUCT_INTEL_82801I_EXP_4  0x2946          /* 82801I PCI Express Port #4 */
+#define        PCI_PRODUCT_INTEL_82801I_EXP_5  0x2948          /* 82801I PCI Express Port #5 */
+#define        PCI_PRODUCT_INTEL_82801I_EXP_6  0x294a          /* 82801I PCI Express Port #6 */
+#define        PCI_PRODUCT_INTEL_82801I_IGP_C  0x294c          /* 82801I (C) LAN Controller */
#define        PCI_PRODUCT_INTEL_82965Q_HB     0x2990          /* 82965Q Host Bridge */
#define        PCI_PRODUCT_INTEL_82965Q_EXP    0x2991          /* 82965Q PCI Express Bridge */
#define        PCI_PRODUCT_INTEL_82965Q_IGD    0x2992          /* 82965Q Integrated Graphics Device */
#define        PCI_PRODUCT_INTEL_82965Q_IGD_1  0x2993          /* 82965Q Integrated Graphics Device */
+#define        PCI_PRODUCT_INTEL_82965G_HB     0x29a0          /* 82965G Host Bridge */
+#define        PCI_PRODUCT_INTEL_82965G_EXP    0x29a1          /* 82965G PCI Express Bridge */
+#define        PCI_PRODUCT_INTEL_82965G_IGD    0x29a2          /* 82965G Integrated Graphics Device */
+#define        PCI_PRODUCT_INTEL_82965G_IGD_1  0x29a3          /* 82965G Integrated Graphics Device */
+#define        PCI_PRODUCT_INTEL_82G33_HB      0x29c0          /* 82G33/P35 Host Bridge */
+#define        PCI_PRODUCT_INTEL_82G33_EXP     0x29c1          /* 82G33 PCI Express Port */
+#define        PCI_PRODUCT_INTEL_82G33_IGD     0x29c2          /* 82G33 Integrated Graphics Device */
+#define        PCI_PRODUCT_INTEL_82G33_IGD_1   0x29c3          /* 82G33 Integrated Graphics Device */
+#define        PCI_PRODUCT_INTEL_82801I_LAN    0x29c4          /* 82801I LAN Controller */
+#define        PCI_PRODUCT_INTEL_82965PM_HB    0x2a00          /* 82965PM Host Bridge */
+#define        PCI_PRODUCT_INTEL_82965PM_IGD   0x2a02          /* 82965PM Integrated Graphics Device */
+#define        PCI_PRODUCT_INTEL_82965PM_IGD_1 0x2a03          /* 82965PM Integrated Graphics Device */
#define        PCI_PRODUCT_INTEL_31244 0x3200          /* 31244 Serial ATA Controller */
#define        PCI_PRODUCT_INTEL_82855PM_DDR   0x3340          /* 82855PM MCH Host Controller */
#define        PCI_PRODUCT_INTEL_82855PM_AGP   0x3341          /* 82855PM Host-AGP Bridge */
@@ -2347,6 +2510,8 @@
#define        PCI_PRODUCT_INTEL_PRO_WL_2915ABG_1      0x4223          /* PRO/Wireless LAN 2915ABG Mini-PCI Adapter */
#define        PCI_PRODUCT_INTEL_PRO_WL_2915ABG_2      0x4224          /* PRO/Wireless LAN 2915ABG Mini-PCI Adapter */
#define        PCI_PRODUCT_INTEL_PRO_WL_3945ABG_2      0x4227          /* PRO/Wireless LAN 3945ABG Mini-PCI Adapter */
+#define        PCI_PRODUCT_INTEL_PRO_WL_4965AGN_1      0x4229          /* PRO/Wireless LAN 4965AGN Mini-PCI Adapter */
+#define        PCI_PRODUCT_INTEL_PRO_WL_4965AGN_2      0x4230          /* PRO/Wireless LAN 4965AGN Mini-PCI Adapter */
#define        PCI_PRODUCT_INTEL_80312_ATU     0x530d          /* 80310 ATU */
#define        PCI_PRODUCT_INTEL_82371SB_ISA   0x7000          /* 82371SB (PIIX3) PCI-ISA Bridge */
#define        PCI_PRODUCT_INTEL_82371SB_IDE   0x7010          /* 82371SB (PIIX3) IDE Interface */
@@ -2641,8 +2806,11 @@
#define        PCI_PRODUCT_SYMBIOS_1035ZC      0x0041          /* 53c1035ZC */
#define        PCI_PRODUCT_SYMBIOS_SAS1064     0x0050          /* SAS1064 */
#define        PCI_PRODUCT_SYMBIOS_SAS1068     0x0054          /* SAS1068 */
+#define        PCI_PRODUCT_SYMBIOS_SAS1068_2   0x0055          /* SAS1068 */
#define        PCI_PRODUCT_SYMBIOS_SAS1064E    0x0056          /* SAS1064E */
+#define        PCI_PRODUCT_SYMBIOS_SAS1064E_2  0x0057          /* SAS1064E */
#define        PCI_PRODUCT_SYMBIOS_SAS1068E    0x0058          /* SAS1068E */
+#define        PCI_PRODUCT_SYMBIOS_SAS1068E_2  0x0059          /* SAS1068E */
#define        PCI_PRODUCT_SYMBIOS_SAS1066E    0x005A          /* SAS1066E */
#define        PCI_PRODUCT_SYMBIOS_SAS1064A    0x005C          /* SAS1064A */
#define        PCI_PRODUCT_SYMBIOS_SAS1066     0x005E          /* SAS1066 */
@@ -2673,6 +2841,7 @@
/* Parallels products */
#define        PCI_PRODUCT_PARALLELS_TOOLS     0x1112          /* Tools */
#define        PCI_PRODUCT_PARALLELS_VIDEO     0x1121          /* Video */
+#define        PCI_PRODUCT_PARALLELS_VIDEO2    0x1131          /* Video II */

/* NEC products */
#define        PCI_PRODUCT_NEC_USB     0x0035          /* USB Host Controller */
@@ -2733,6 +2902,7 @@
#define        PCI_PRODUCT_NVIDIA_RIVATNT2U    0x0029          /* RIVA TNT2 Ultra */
#define        PCI_PRODUCT_NVIDIA_VANTA        0x002c          /* Vanta */
#define        PCI_PRODUCT_NVIDIA_RIVATNT2M64  0x002d          /* RIVA TNT2 Model 64 */
+#define        PCI_PRODUCT_NVIDIA_MCP04_SMBUS  0x0034          /* MCP04 SMBus */
#define        PCI_PRODUCT_NVIDIA_MCP04_IDE    0x0035          /* MCP04 IDE */
#define        PCI_PRODUCT_NVIDIA_MCP04_SATA   0x0036          /* MCP04 SATA */
#define        PCI_PRODUCT_NVIDIA_MCP04_LAN1   0x0037          /* MCP04 Ethernet */
@@ -2775,8 +2945,9 @@
#define        PCI_PRODUCT_NVIDIA_NFORCE2_400_PPB      0x008b          /* nForce2 Ultra 400 PCI-PCI bridge */
#define        PCI_PRODUCT_NVIDIA_NFORCE2_400_LAN2     0x008c          /* nForce2 Ultra 400 Ethernet */
#define        PCI_PRODUCT_NVIDIA_NFORCE2_400_SATA     0x008e          /* nForce2 Ultra 400 Serial ATA Controller */
-#define        PCI_PRODUCT_NVIDIA_NFORCE3_PCHB 0x00d1          /* nForce3 Host-PCI bridge */
#define        PCI_PRODUCT_NVIDIA_NFORCE3_PCIB 0x00d0          /* nForce3 PCI-ISA bridge */
+#define        PCI_PRODUCT_NVIDIA_NFORCE3_PCHB 0x00d1          /* nForce3 Host-PCI bridge */
+#define        PCI_PRODUCT_NVIDIA_NFORCE3_PPB2 0x00d2          /* nForce3 PCI-PCI */
#define        PCI_PRODUCT_NVIDIA_NFORCE3_SMBUS        0x00d4          /* nForce3 SMBus controller */
#define        PCI_PRODUCT_NVIDIA_NFORCE3_ATA133       0x00d5          /* nForce3 ATA133 IDE */
#define        PCI_PRODUCT_NVIDIA_NFORCE3_LAN1 0x00d6          /* nForce3 Ethernet */
@@ -2797,6 +2968,8 @@
#define        PCI_PRODUCT_NVIDIA_NFORCE3_250_MCPT_AC  0x00ea          /* nForce3 250 MCP-T AC-97 */
#define        PCI_PRODUCT_NVIDIA_NFORCE3_250_PPB      0x00ed          /* nForce3 250 PCI-PCI bridge */
#define        PCI_PRODUCT_NVIDIA_NFORCE3_250_SATA2    0x00ee          /* nForce3 250 Serial ATA Controller */
+#define        PCI_PRODUCT_NVIDIA_XBOX_SMBUS   0x01b4          /* Xbox nForce SMBus Controller */
+#define        PCI_PRODUCT_NVIDIA_XBOX_PCHB    0x02a5          /* Xbox nForce Host-PCI bridge */
#define        PCI_PRODUCT_NVIDIA_ALADDINTNT2  0x00a0          /* Aladdin TNT2 */
#define        PCI_PRODUCT_NVIDIA_QUADRO4_280NVS2      0x00fd          /* Quadro4 280 NVS */
#define        PCI_PRODUCT_NVIDIA_QUADROFX3400SLI      0x00fd          /* Quadro FX 3400 SLI */
@@ -2829,7 +3002,7 @@
#define        PCI_PRODUCT_NVIDIA_NFORCE_MCP_AC        0x01b1          /* nForce MCP AC-97 */
#define        PCI_PRODUCT_NVIDIA_NFORCE_ATA100        0x01bc          /* nForce ATA100 IDE */
#define        PCI_PRODUCT_NVIDIA_NFORCE_USB   0x01c2          /* nForce USB */
-#define        PCI_PRODUCT_NVIDIA_NFORCE_LAN   0x01c3          /* nForce Ethetnet */
+#define        PCI_PRODUCT_NVIDIA_NFORCE_LAN   0x01c3          /* nForce Ethernet */
#define        PCI_PRODUCT_NVIDIA_NFORCE2_PCHB 0x01e0          /* nForce2 Host-PCI Bridge */
#define        PCI_PRODUCT_NVIDIA_NFORCE2_PPB2 0x01e8          /* nForce2 PCI-PCI Bridge */
#define        PCI_PRODUCT_NVIDIA_NFORCE2_MEM1 0x01eb          /* nForce2 Memory Controller */
@@ -2866,6 +3039,7 @@
#define        PCI_PRODUCT_NVIDIA_QUADRO4_980_XGL      0x0288          /* Quadro4 980 XGL */
#define        PCI_PRODUCT_NVIDIA_QUADRO4_780_XGL      0x0289          /* Quadro4 780 XGL */
#define        PCI_PRODUCT_NVIDIA_GEFORCE_FX5800U      0x0301          /* GeForce FX 5800 Ultra */
+#define        PCI_PRODUCT_NVIDIA_XBOXFB       0x02a0          /* Xbox Frame Buffer */
#define        PCI_PRODUCT_NVIDIA_GEFORCE_FX5800       0x0302          /* GeForce FX 5800 */
#define        PCI_PRODUCT_NVIDIA_QUADRO_FX_2000       0x0308          /* Quadro FX 2000 */
#define        PCI_PRODUCT_NVIDIA_QUADRO_FX_1000       0x0309          /* Quadro FX 1000 */
@@ -2894,8 +3068,9 @@
#define        PCI_PRODUCT_NVIDIA_MCP55_LAN1   0x0372          /* nForce MCP55 Gigabit Ethernet Controller */
#define        PCI_PRODUCT_NVIDIA_MCP55_LAN2   0x0373          /* nForce MCP55 Gigabit Ethernet Controller */
#define        PCI_PRODUCT_NVIDIA_MCP55_PCIE   0x0377          /* nForce MCP55 PCI-Express 16x Port */
-#define        PCI_PRODUCT_NVIDIA_MCP55_SATA   0x037e          /* nForce MCP55 Seria ATA Controller */
+#define        PCI_PRODUCT_NVIDIA_MCP55_SATA   0x037e          /* nForce MCP55 Serial ATA Controller */
#define        PCI_PRODUCT_NVIDIA_MCP55_SATA2  0x037f          /* nForce MCP55 Serial ATA Controller */
+#define        PCI_PRODUCT_NVIDIA_GF_GO_7600   0x0398          /* GeForce Go 7600 */
#define        PCI_PRODUCT_NVIDIA_MCP61_ISA    0x03e0          /* nForce MCP61 PCI-ISA Bridge */
#define        PCI_PRODUCT_NVIDIA_MCP61_HDA    0x03e4          /* nForce MCP61 High Definition Audio Controller */
#define        PCI_PRODUCT_NVIDIA_MCP61_LAN1   0x03e5          /* nForce MCP61 Gigabit Ethernet Controller */
@@ -3033,6 +3208,7 @@

/* pcHDTV products */
#define        PCI_PRODUCT_PCHDTV_HD2000       0x2000          /* HD-2000 HDTV video capture */
+#define        PCI_PRODUCT_PCHDTV_HD5500       0x5500          /* HD-5500 HDTV video capture */

/* PC Tech products */
#define        PCI_PRODUCT_PCTECH_RZ1000       0x1000          /* RZ1000 */
@@ -3045,7 +3221,8 @@
#define        PCI_PRODUCT_PLANEX_FNW_3800_TX  0xab07          /* FNW-3800-TX 10/100 Ethernet */

/* PLX Technology products */
-#define        PCI_PRODUCT_PLX_9030    0x9030          /* 9030 Modem 4 port */
+#define        PCI_PRODUCT_PLX_9030    0x9030          /* 9030 I/O Accelrator */
+#define        PCI_PRODUCT_PLX_9050    0x5201          /* 9050 I/O Accelrator */
#define        PCI_PRODUCT_PLX_9054    0x9054          /* 9054 I/O Accelerator */
#define        PCI_PRODUCT_PLX_9060ES  0x906e          /* 9060ES PCI bus controller */
#define        PCI_PRODUCT_PLX_9656    0x9656          /* 9656 I/O Accelerator */
@@ -3146,6 +3323,8 @@
#define        PCI_PRODUCT_RICOH_Rx5C478       0x0478          /* 5C478 PCI-CardBus bridge */
#define        PCI_PRODUCT_RICOH_Rx5C551       0x0551          /* 5C551 PCI-CardBus bridge/Firewire */
#define        PCI_PRODUCT_RICOH_Rx5C552       0x0552          /* 5C552 PCI-CardBus bridge/Firewire */
+#define        PCI_PRODUCT_RICOH_Rx5C822       0x0822          /* 5C822 SD/MMC Host Adapter */
+#define        PCI_PRODUCT_RICOH_Rx5C843       0x0843          /* 5C843 MMC Host Controller */

/* RISCom (SDL Communications?) products */
#define        PCI_PRODUCT_RISCOM_N2   0x5568          /* N2 */
@@ -3228,8 +3407,10 @@
#define        PCI_PRODUCT_SERVERWORKS_OSB4    0x0200          /* OSB4 southbridge */
#define        PCI_PRODUCT_SERVERWORKS_CSB5    0x0201          /* CSB5 southbridge */
#define        PCI_PRODUCT_SERVERWORKS_CSB6    0x0203          /* CSB6 southbridge */
+#define        PCI_PRODUCT_SERVERWORKS_HT1000SB        0x0205          /* HT1000SB southbridge */
#define        PCI_PRODUCT_SERVERWORKS_OSB4_IDE        0x0211          /* OSB4 IDE */
#define        PCI_PRODUCT_SERVERWORKS_CSB5_IDE        0x0212          /* CSB5 IDE */
+#define        PCI_PRODUCT_SERVERWORKS_HT1000_IDE      0x0214          /* HT-1000 IDE Controller */
#define        PCI_PRODUCT_SERVERWORKS_CSB6_RAID       0x0213          /* CSB6 IDE/RAID */
#define        PCI_PRODUCT_SERVERWORKS_CSB6_IDE        0x0217          /* CSB6 IDE/RAID */
#define        PCI_PRODUCT_SERVERWORKS_OSB4_USB        0x0220          /* OSB4/CSB5 USB Host Controller */
@@ -3239,7 +3420,8 @@
#define        PCI_PRODUCT_SERVERWORKS_K2_SATA 0x0240          /* K2 SATA */
#define        PCI_PRODUCT_SERVERWORKS_FRODO4_SATA     0x0241          /* Frodo4 SATA */
#define        PCI_PRODUCT_SERVERWORKS_FRODO8_SATA     0x0242          /* Frodo8 SATA */
-#define        PCI_PRODUCT_SERVERWORKS_HT1000_SATA     0x024a          /* HT-1000 SATA */
+#define        PCI_PRODUCT_SERVERWORKS_HT1000_SATA_1   0x024a          /* HT-1000 SATA */
+#define        PCI_PRODUCT_SERVERWORKS_HT1000_SATA_2   0x024b          /* HT-1000 SATA */
#define        PCI_PRODUCT_SERVERWORKS_BCM5714 0x0103          /* bcm5714/bcm5715 integral PCI-E to PCI-X bridge */

/* SGI products */
@@ -3613,14 +3795,19 @@

/* VIA Technologies products, from http://www.via.com.tw/ */
#define        PCI_PRODUCT_VIATECH_VT6305      0x0130          /* VT6305 IEEE 1394 Host Controller */
+#define        PCI_PRODUCT_VIATECH_K8M800_0    0x0204          /* K8M800 Host */
+#define        PCI_PRODUCT_VIATECH_K8T890_0    0x0238          /* K8T890 Host */
#define        PCI_PRODUCT_VIATECH_KT880       0x0269          /* KT880 CPU to PCI Bridge */
+#define        PCI_PRODUCT_VIATECH_K8HTB_0     0x0282          /* K8HTB Host */
#define        PCI_PRODUCT_VIATECH_VT8363_HB   0x0305          /* VT8363 (Apollo KT133) Host Bridge */
+#define        PCI_PRODUCT_VIATECH_VT3351_HB_0351      0x0351          /* VT3351 Host Bridge */
#define        PCI_PRODUCT_VIATECH_VT8371_HB   0x0391          /* VT8371 (Apollo KX133) Host Bridge */
#define        PCI_PRODUCT_VIATECH_VT8501_MVP4 0x0501          /* VT8501 (Apollo MVP4) Host Bridge */
#define        PCI_PRODUCT_VIATECH_VT82C505    0x0505          /* VT82C505 (Pluto) */
#define        PCI_PRODUCT_VIATECH_VT82C561    0x0561          /* VT82C561 */
#define        PCI_PRODUCT_VIATECH_VT82C586A_IDE       0x0571          /* VT82C586A IDE Controller */
#define        PCI_PRODUCT_VIATECH_VT82C576    0x0576          /* VT82C576 3V */
+#define        PCI_PRODUCT_VIATECH_CX700_IDE   0x0581          /* CX700 IDE Controller */
#define        PCI_PRODUCT_VIATECH_VT82C580VP  0x0585          /* VT82C580 (Apollo VP) Host-PCI Bridge */
#define        PCI_PRODUCT_VIATECH_VT82C586_ISA        0x0586          /* VT82C586 PCI-ISA Bridge */
#define        PCI_PRODUCT_VIATECH_VT8237A_SATA        0x0591          /* VT8237A Integrated SATA Controller */
@@ -3636,9 +3823,15 @@
#define        PCI_PRODUCT_VIATECH_VT82C570M   0x1000          /* VT82C570M (Apollo) Host-PCI Bridge */
#define        PCI_PRODUCT_VIATECH_VT82C570MV  0x1006          /* VT82C570M (Apollo) PCI-ISA Bridge */
#define        PCI_PRODUCT_VIATECH_KT880_1     0x1269          /* KT880 CPU to PCI Bridge */
+#define        PCI_PRODUCT_VIATECH_VT3351_HB_1351      0x1351          /* VT3351 Host Bridge */
#define        PCI_PRODUCT_VIATECH_VT82C586_IDE        0x1571          /* VT82C586 IDE Controller */
#define        PCI_PRODUCT_VIATECH_VT82C595_2  0x1595          /* VT82C595 (Apollo VP2) Host-PCI Bridge */
#define        PCI_PRODUCT_VIATECH_KT880_2     0x2269          /* KT880 CPU to PCI Bridge */
+#define        PCI_PRODUCT_VIATECH_VT3351_HB_2351      0x2351          /* VT3351 Host Bridge */
+#define        PCI_PRODUCT_VIATECH_VT8251_PPB_287A     0x287a          /* VT8251 PCI-PCI Bridge */
+#define        PCI_PRODUCT_VIATECH_VT8251_PCIE1        0x287c          /* VT8251 PCIE Root Port1 */
+#define        PCI_PRODUCT_VIATECH_VT8251_PCIE2        0x287d          /* VT8251 PCIE Root Port2 */
+#define        PCI_PRODUCT_VIATECH_VT8251_VLINK        0x287e          /* VT8251 Ultra VLINK Controller */
#define        PCI_PRODUCT_VIATECH_VT83C572    0x3038          /* VT83C572 USB Controller */
#define        PCI_PRODUCT_VIATECH_VT82C586_PWR        0x3040          /* VT82C586 Power Management Controller */
#define        PCI_PRODUCT_VIATECH_VT3043      0x3043          /* VT3043 (Rhine) 10/100 Ethernet */
@@ -3659,9 +3852,11 @@
#define        PCI_PRODUCT_VIATECH_VT8623      0x3123          /* VT8623 (Apollo CLE266) CPU-PCI Bridge */
#define        PCI_PRODUCT_VIATECH_VT8233A     0x3147          /* VT8233A PCI-ISA Bridge */
#define        PCI_PRODUCT_VIATECH_VT8237_SATA 0x3149          /* VT8237 Integrated SATA Controller */
+#define        PCI_PRODUCT_VIATECH_K8HTB       0x3188          /* K8HTB Host */
+#define        PCI_PRODUCT_VIATECH_VT6421_RAID 0x3249          /* VT6421 Serial RAID Controller */
#define        PCI_PRODUCT_VIATECH_VT3314_IG   0x3344          /* VT3314 CN900 UniChrome Integrated Graphics */
#define        PCI_PRODUCT_VIATECH_VT8237R_SATA        0x3349          /* VT8237R Integrated SATA Controller */
-#define        PCI_PRODUCT_VIATECH_VT6421_RAID 0x3249          /* VT6421 Serial RAID Controller */
+#define        PCI_PRODUCT_VIATECH_VT3351_HB_3351      0x3351          /* VT3351 Host Bridge */
#define        PCI_PRODUCT_VIATECH_KT880_3     0x3269          /* KT880 CPU to PCI bridge */
#define        PCI_PRODUCT_VIATECH_VT8235      0x3177          /* VT8235 (Apollo KT400) PCI-ISA Bridge */
#define        PCI_PRODUCT_VIATECH_VT8377      0x3189          /* VT8377 Apollo KT400 CPU to PCI Bridge */
@@ -3669,10 +3864,16 @@
#define        PCI_PRODUCT_VIATECH_VT8237      0x3227          /* VT8237 (Apollo KT600) PCI-ISA Bridge */
#define        PCI_PRODUCT_VIATECH_VT8237A_HDA 0x3288          /* VT8237A/VT8251 High Definition Audio Controller */
#define        PCI_PRODUCT_VIATECH_VT8237A_ISA 0x3337          /* VT8237A/VT82C586A PCI-ISA Bridge */
+#define        PCI_PRODUCT_VIATECH_VT8237S_ISA 0x3372          /* VT8237S PCI-ISA Bridge */
+#define        PCI_PRODUCT_VIATECH_VT8237A_PPB 0x337a          /* VT8237A PCI-PCI Bridge */
+#define        PCI_PRODUCT_VIATECH_VT8237A_HB  0x337b          /* VT8237A Host Bridge */
#define        PCI_PRODUCT_VIATECH_KT880_4     0x4269          /* KT880 CPU to PCI Bridge */
+#define        PCI_PRODUCT_VIATECH_VT3351_HB_4351      0x4351          /* VT3351 Host Bridge */
+#define        PCI_PRODUCT_VIATECH_VT3351_IOAPIC       0x5351          /* VT3351 I/O APIC Interrupt Controller */
#define        PCI_PRODUCT_VIATECH_VT86C100A   0x6100          /* VT86C100A (Rhine-II) 10/100 Ethernet */
#define        PCI_PRODUCT_VIATECH_VT8378_IG   0x7205          /* VT8378 KM400 UniChrome Integrated Graphics */
#define        PCI_PRODUCT_VIATECH_KT880_5     0x7269          /* KT880 CPU to PCI Bridge */
+#define        PCI_PRODUCT_VIATECH_VT3351_HB_7351      0x7351          /* VT3351 Host Bridge */
#define        PCI_PRODUCT_VIATECH_VT8231      0x8231          /* VT8231 PCI-ISA Bridge */
#define        PCI_PRODUCT_VIATECH_VT8231_PWR  0x8235          /* VT8231 Power Management Controller */
#define        PCI_PRODUCT_VIATECH_VT8363_PPB  0x8305          /* VT8363 (Apollo KT133) PCI to AGP Bridge */
@@ -3681,10 +3882,17 @@
#define        PCI_PRODUCT_VIATECH_VT82C597AGP 0x8597          /* VT82C597 (Apollo VP3) CPU-AGP Bridge */
#define        PCI_PRODUCT_VIATECH_VT82C598AGP 0x8598          /* VT82C598 (Apollo MVP3) CPU-AGP Bridge */
#define        PCI_PRODUCT_VIATECH_VT8605AGP   0x8605          /* VT8605 (Apollo ProMedia 133) Host-AGP Bridge */
+#define        PCI_PRODUCT_VIATECH_K8T890_PPB_A238     0xa238          /* K8T890 PCI-PCI Bridge */
#define        PCI_PRODUCT_VIATECH_VT8633AGP   0xb091          /* VT8633 (Apollo Pro 266) CPU-AGP Bridge */
#define        PCI_PRODUCT_VIATECH_VT8366AGP   0xb099          /* VT8366 (Apollo KT266) CPU-AGP Bridge */
#define        PCI_PRODUCT_VIATECH_VT8377AGP   0xb168          /* VT8377 CPU-AGP Bridge */
+#define        PCI_PRODUCT_VIATECH_K8HTB_AGP   0xb188          /* K8HTB AGP */
#define        PCI_PRODUCT_VIATECH_VT8377CEAGP 0xb198          /* VT8377CE CPU-AGP Bridge */
+#define        PCI_PRODUCT_VIATECH_VT3237_PPB  0xb999          /* K8T890 North / VT8237 South PCI-PCI Bridge */
+#define        PCI_PRODUCT_VIATECH_K8T890_PPB_C238     0xc238          /* K8T890 PCI-PCI Bridge */
+#define        PCI_PRODUCT_VIATECH_K8T890_PPB_D238     0xd238          /* K8T890 PCI-PCI Bridge */
+#define        PCI_PRODUCT_VIATECH_K8T890_PPB_E238     0xe238          /* K8T890 PCI-PCI Bridge */
+#define        PCI_PRODUCT_VIATECH_K8T890_PPB_F238     0xf238          /* K8T890 PCI-PCI Bridge */

/* Vortex Computer Systems products */
#define        PCI_PRODUCT_VORTEX_GDT_60x0     0x0000          /* GDT6000/6020/6050 */
@@ -3807,6 +4015,7 @@
#define        PCI_PRODUCT_WORKBIT_NJSC32UDE_LOGITEC2  0xf013          /* NinjaSCSI-32UDE SCSI (LOGITEC2) */
#define        PCI_PRODUCT_WORKBIT_NJSC32UDE_BUFFALO   0xf015          /* NinjaSCSI-32UDE SCSI (BUFFALO) */
#define        PCI_PRODUCT_WORKBIT_NPATA32_CF32A       0xf021          /* CF32A CompactFlash Adapter */
+#define        PCI_PRODUCT_WORKBIT_NPATA32_CF32A_BUFFALO       0xf024          /* CF32A CF Adapter (BUFFALO) */
#define        PCI_PRODUCT_WORKBIT_NPATA32_KME 0xf02c          /* NPATA-32 IDE (KME) */

/* Xircom products */
Index: sys/dev/pci/pcidevs_data.h
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/pcidevs_data.h,v
retrieving revision 1.853.2.19
diff -u -p -u -r1.853.2.19 pcidevs_data.h
--- sys/dev/pci/pcidevs_data.h  23 Feb 2008 14:22:44 -0000      1.853.2.19
+++ sys/dev/pci/pcidevs_data.h  7 Mar 2008 08:41:31 -0000
@@ -1,10 +1,10 @@
-/*     $NetBSD: pcidevs_data.h,v 1.853.2.19 2008/02/23 14:22:44 bouyer Exp $   */
+/*     $NetBSD$        */

/*
 * THIS FILE AUTOMATICALLY GENERATED.  DO NOT EDIT.
 *
 * generated from:
- *     NetBSD
+ *     NetBSD: pcidevs,v 1.855.2.19 2008/02/23 14:21:50 bouyer Exp
 */

/*
@@ -2060,6 +2060,10 @@ static const struct pci_vendor pci_vendo
           "Oxford Semiconductor",
       },
       {
+           PCI_VENDOR_CHELSIO,
+           "Chelsio Communications",
+       },
+       {
           PCI_VENDOR_TAMARACK,
           "Tamarack Microelectronics",
       },
@@ -2240,6 +2244,10 @@ static const struct pci_vendor pci_vendo
           "Ralink Technologies",
       },
       {
+           PCI_VENDOR_ATTANSIC,
+           "Attansic Technologies",
+       },
+       {
           PCI_VENDOR_SYMPHONY2,
           "Symphony Labs (2nd PCI Vendor ID)",
       },
@@ -2380,7 +2388,7 @@ static const struct pci_vendor pci_vendo
           "INVALID VENDOR ID",
       },
};
-const int pci_nvendors = 585;
+const int pci_nvendors = 587;

static const struct pci_product pci_products[] = {
       {
@@ -2788,6 +2796,10 @@ static const struct pci_product pci_prod
           "M1563 PCI-ISA Bridge",
       },
       {
+           PCI_VENDOR_ALI, PCI_PRODUCT_ALI_M1689,
+           "M1689 Host-PCI Bridge",
+       },
+       {
           PCI_VENDOR_ALI, PCI_PRODUCT_ALI_M3309,
           "M3309 MPEG Decoder",
       },
@@ -2820,6 +2832,10 @@ static const struct pci_product pci_prod
           "M5249 Hypertransport to PCI bridge",
       },
       {
+           PCI_VENDOR_ALI, PCI_PRODUCT_ALI_M5261,
+           "M5261 Tulip Ethernet Controller",
+       },
+       {
           PCI_VENDOR_ALI, PCI_PRODUCT_ALI_M5451,
           "M5451 AC-Link Controller Audio Device",
       },
@@ -3040,6 +3056,10 @@ static const struct pci_product pci_prod
           "AN985 (Centaur-C) 10/100 Ethernet",
       },
       {
+           PCI_VENDOR_ADMTEK, PCI_PRODUCT_ADMTEK_ADM5120,
+           "Infineon ADM5120 PCI host bridge",
+       },
+       {
           PCI_VENDOR_ADMTEK, PCI_PRODUCT_ADMTEK_ADM8211,
           "ADM8211 11Mbps 802.11b WLAN",
       },
@@ -3137,19 +3157,59 @@ static const struct pci_product pci_prod
       },
       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_HT,
-           "AMD64 HyperTransport configuration",
+           "K8 AMD64 HyperTransport configuration",
       },
       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_ADDR,
-           "AMD64 Address Map configuration",
+           "K8 AMD64 Address Map configuration",
       },
       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_DRAM,
-           "AMD64 DRAM configuration",
+           "K8 AMD64 DRAM configuration",
       },
       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_MISC,
-           "AMD64 Miscellaneous configuration",
+           "K8 AMD64 Miscellaneous configuration",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_F10_HT,
+           "AMD64 Family10h HyperTransport configuration",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_F10_ADDR,
+           "AMD64 Family10h Address Map configuration",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_F10_DRAM,
+           "AMD64 Family10h DRAM configuration",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_F10_MISC,
+           "AMD64 Family10h Miscellaneous configuration",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_F10_LINK,
+           "AMD64 Family10h Link configuration",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_F11_HT,
+           "AMD64 Family11h HyperTransport configuration",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_F11_ADDR,
+           "AMD64 Family11h Address Map configuration",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_F11_DRAM,
+           "AMD64 Family11h DRAM configuration",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_F11_MISC,
+           "AMD64 Family11h Miscellaneous configuration",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AMD64_F11_LINK,
+           "AMD64 Family11h Link configuration",
       },
       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PCNET_PCI,
@@ -3160,6 +3220,10 @@ static const struct pci_product pci_prod
           "PCnet-Home HomePNA Ethernet",
       },
       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_AM_1771_MBW,
+           "Alchemy AM 1771 MBW",
+       },
+       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PCSCSI_PCI,
           "PCscsi-PCI SCSI",
       },
@@ -3176,10 +3240,22 @@ static const struct pci_product pci_prod
           "Geode LX AES Security Block",
       },
       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_CS5536_PCISB,
+           "CS5536 GeodeLink PCI South Bridge",
+       },
+       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_CS5536_PCIB,
           "CS5536 PCI-ISA Bridge",
       },
       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_CS5536_FLASH,
+           "CS5536 Flash",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_CS5536_AUDIO,
+           "CS5536 Audio",
+       },
+       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_CS5536_OHCI,
           "CS5536 OHCI USB Controller",
       },
@@ -3188,6 +3264,14 @@ static const struct pci_product pci_prod
           "CS5536 EHCI USB Controller",
       },
       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_CS5536_UDC,
+           "CS5536 UDC",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_CS5536_UOC,
+           "CS5536 UOC",
+       },
+       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_CS5536_IDE,
           "CS5536 IDE Controller",
       },
@@ -3204,20 +3288,12 @@ static const struct pci_product pci_prod
           "AMD751 PCI-PCI Bridge",
       },
       {
-           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC756_ISA,
-           "AMD756 PCI-ISA Bridge",
-       },
-       {
-           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC756_IDE,
-           "AMD756 IDE controller",
-       },
-       {
-           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC756_PMC,
-           "AMD756 Power Management Controller",
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_IGR4_AGP,
+           "AMD IGR4 AGP Bridge",
       },
       {
-           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC756_USB,
-           "AMD756 USB Host Controller",
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_IGR4_PPB,
+           "AMD IGR4 PCI-PCI Bridge",
       },
       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_SC762_NB,
@@ -3236,6 +3312,38 @@ static const struct pci_product pci_prod
           "AMD761 PCI-PCI Bridge",
       },
       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC755_ISA,
+           "AMD755 PCI-ISA Bridge",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC755_IDE,
+           "AMD755 IDE controller",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC755_PMC,
+           "AMD755 ACPI controller",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC755_USB,
+           "AMD755 USB Host controller",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC756_ISA,
+           "AMD756 PCI-ISA Bridge",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC756_IDE,
+           "AMD756 IDE controller",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC756_PMC,
+           "AMD756 Power Management Controller",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC756_USB,
+           "AMD756 USB Host Controller",
+       },
+       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC766_ISA,
           "AMD766 Southbridge",
       },
@@ -3296,14 +3404,26 @@ static const struct pci_product pci_prod
           "AMD8151 AGP Bridge",
       },
       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PCIX_PPB,
+           "AMD8123 PCI-X Bridge",
+       },
+       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PCIX_APIC,
-           "AMD PCI-X IOAPIC",
+           "AMD8132 PCI-X IOAPIC",
       },
       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC8111,
           "AMD8111 I/O Hub",
       },
       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC8111_USB_7461,
+           "AMD8111 7461 USB Host Controller",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC8111_ETHER,
+           "AMD8111 Ethernet",
+       },
+       {
           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC8111_USB,
           "AMD8111 USB Host Controller",
       },
@@ -3328,6 +3448,14 @@ static const struct pci_product pci_prod
           "AMD8111 AC97 Audio",
       },
       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC8111_MC97,
+           "AMD8111 MC97 Modem",
+       },
+       {
+           PCI_VENDOR_AMD, PCI_PRODUCT_AMD_PBC8111_AC_756b,
+           "AMD8111 756b ACPI Controller",
+       },
+       {
           PCI_VENDOR_AMI, PCI_PRODUCT_AMI_MEGARAID,
           "MegaRAID",
       },
@@ -3632,6 +3760,78 @@ static const struct pci_product pci_prod
           "ARC-1681",
       },
       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1110,
+           "ARC-1110",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1120,
+           "ARC-1120",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1130,
+           "ARC-1130",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1160,
+           "ARC-1160",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1170,
+           "ARC-1170",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1200,
+           "ARC-1200",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1200_B,
+           "ARC-1200 rev B",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1202,
+           "ARC-1202",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1210,
+           "ARC-1210",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1220,
+           "ARC-1220",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1230,
+           "ARC-1230",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1260,
+           "ARC-1260",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1270,
+           "ARC-1270",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1280,
+           "ARC-1280",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1380,
+           "ARC-1380",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1381,
+           "ARC-1381",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1680,
+           "ARC-1680",
+       },
+       {
+           PCI_VENDOR_ARECA, PCI_PRODUCT_ARECA_ARC1681,
+           "ARC-1681",
+       },
+       {
           PCI_VENDOR_ASIX, PCI_PRODUCT_ASIX_AX88140A,
           "AX88140A 10/100 Ethernet",
       },
@@ -3640,6 +3840,14 @@ static const struct pci_product pci_prod
           "ISDN",
       },
       {
+           PCI_VENDOR_ATTANSIC, PCI_PRODUCT_ATTANSIC_ETHERNET_GIGA,
+           "L1 Gigabit Ethernet Adapter",
+       },
+       {
+           PCI_VENDOR_ATTANSIC, PCI_PRODUCT_ATTANSIC_ETHERNET_100,
+           "L2 100 Mbit Ethernet Adapter",
+       },
+       {
           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_RV380_3150,
           "Radeon Mobility X600 (M24) 3150",
       },
@@ -3852,10 +4060,54 @@ static const struct pci_product pci_prod
           "SB600 SATA Controller",
       },
       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_SB600_AC97_AUDIO,
+           "SB600 AC97 Audio",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_SB600_AZALIA,
+           "SB600 Azalia",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_SB600_PPB_4384,
+           "SB600 PCI to PCI Bridge",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_SB600_SMBUS,
+           "SB600 SMBus Controller",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_SB600_USB_EHCI,
+           "SB600 USB EHCI Controller",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_SB600_USB_OHCI0,
+           "SB600 USB OHCI0 Controller",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_SB600_USB_OHCI1,
+           "SB600 USB OHCI1 Controller",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_SB600_USB_OHCI2,
+           "SB600 USB OHCI2 Controller",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_SB600_USB_OHCI3,
+           "SB600 USB OHCI3 Controller",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_SB600_USB_OHCI4,
+           "SB600 USB OHCI4 Controller",
+       },
+       {
           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_IXP_IDE_600,
           "SB600 IXP IDE Controller",
       },
       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_SB600_PLB_438D,
+           "SB600 PCI to LPC Bridge",
+       },
+       {
           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_MACH64_CT,
           "Mach64 CT",
       },
@@ -4276,6 +4528,10 @@ static const struct pci_product pci_prod
           "Radeon 7000/VE QZ",
       },
       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_ES1000,
+           "ES1000",
+       },
+       {
           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_9100_S,
           "Radeon 9100 Series Secondary",
       },
@@ -4400,6 +4656,18 @@ static const struct pci_product pci_prod
           "Radeon 9200 Secondary",
       },
       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RS480_HB,
+           "RS480 Host Bridge",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RD580,
+           "RD580 CrossFire Xpress 3200 Host Bridge",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_RV370_5954,
+           "Radeon Xpress 200G Series",
+       },
+       {
           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_RV280_5960,
           "Radeon 9200PRO 5960",
       },
@@ -4420,10 +4688,6 @@ static const struct pci_product pci_prod
           "Radeon 9200SE 5964",
       },
       {
-           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RS480_HB,
-           "RS480 Host Bridge",
-       },
-       {
           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RS482M,
           "Radeon Xpress Series (RS482M)",
       },
@@ -4436,6 +4700,14 @@ static const struct pci_product pci_prod
           "RS480 PCI Express Bridge",
       },
       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RS480_PPB_5A37,
+           "RS480 PCI Express Bridge",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RS480_PPB_5A38,
+           "RS480 PCI Express Bridge",
+       },
+       {
           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RS480_PPB_5A3F,
           "RS480 PCI Express Bridge",
       },
@@ -4444,6 +4716,14 @@ static const struct pci_product pci_prod
           "Radeon X300 (RV370) 5B60",
       },
       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_RV380_5B62,
+           "Radeon X600 PCI Express",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_RV370_5B63,
+           "Radeon Sapphire X550 Silent",
+       },
+       {
           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_RV370_5B64,
           "FireGL V3100 (RV370) 5B64",
       },
@@ -4456,6 +4736,10 @@ static const struct pci_product pci_prod
           "Radeon X300 Series Secondary",
       },
       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_RV370_5B73,
+           "Radeon RV370 secondary",
+       },
+       {
           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_RV280_5C61,
           "Radeon Mobility 9200 (M9+)",
       },
@@ -4488,6 +4772,14 @@ static const struct pci_product pci_prod
           "Radeon X700 Pro Secondary",
       },
       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_X1300,
+           "Radeon X1300 Series (RV515)",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_X1300_S,
+           "Radeon X1300 Series (RV515) Secondary",
+       },
+       {
           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_RS300_7834,
           "Radeon 9100 PRO IGP",
       },
@@ -4496,6 +4788,14 @@ static const struct pci_product pci_prod
           "Radeon 9200 IGP",
       },
       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_HD2600_XT,
+           "Radeon HD2600 XT GDDR3",
+       },
+       {
+           PCI_VENDOR_ATI, PCI_PRODUCT_ATI_RADEON_HD2600_HD,
+           "Radeon HD2600 HD Audio Controller",
+       },
+       {
           PCI_VENDOR_AURAVISION, PCI_PRODUCT_AURAVISION_VXP524,
           "VxP524 PCI Video Processor",
       },
@@ -5032,6 +5332,42 @@ static const struct pci_product pci_prod
           "Nitrox XL",
       },
       {
+           PCI_VENDOR_CHELSIO, PCI_PRODUCT_CHELSIO_T302E,
+           "T302e",
+       },
+       {
+           PCI_VENDOR_CHELSIO, PCI_PRODUCT_CHELSIO_T310E,
+           "T310e",
+       },
+       {
+           PCI_VENDOR_CHELSIO, PCI_PRODUCT_CHELSIO_T320X,
+           "T320x",
+       },
+       {
+           PCI_VENDOR_CHELSIO, PCI_PRODUCT_CHELSIO_T302X,
+           "T302x",
+       },
+       {
+           PCI_VENDOR_CHELSIO, PCI_PRODUCT_CHELSIO_T320E,
+           "T320e",
+       },
+       {
+           PCI_VENDOR_CHELSIO, PCI_PRODUCT_CHELSIO_T310X,
+           "T310x",
+       },
+       {
+           PCI_VENDOR_CHELSIO, PCI_PRODUCT_CHELSIO_T3B10,
+           "T3B10",
+       },
+       {
+           PCI_VENDOR_CHELSIO, PCI_PRODUCT_CHELSIO_T3B20,
+           "T3B20",
+       },
+       {
+           PCI_VENDOR_CHELSIO, PCI_PRODUCT_CHELSIO_T3B02,
+           "T3B02",
+       },
+       {
           PCI_VENDOR_CHIPS, PCI_PRODUCT_CHIPS_64310,
           "64310",
       },
@@ -5188,10 +5524,6 @@ static const struct pci_product pci_prod
           "SiI3112 SATALink",
       },
       {
-           PCI_VENDOR_CMDTECH, PCI_PRODUCT_CMDTECH_3512,
-           "SiI3512 SATALink",
-       },
-       {
           PCI_VENDOR_CMDTECH, PCI_PRODUCT_CMDTECH_3114,
           "SiI3114 SATALink",
       },
@@ -5204,6 +5536,14 @@ static const struct pci_product pci_prod
           "SiI3132 SATALink",
       },
       {
+           PCI_VENDOR_CMDTECH, PCI_PRODUCT_CMDTECH_3512,
+           "SiI3512 SATALink",
+       },
+       {
+           PCI_VENDOR_CMDTECH, PCI_PRODUCT_CMDTECH_3531,
+           "SiI3531 SATALink",
+       },
+       {
           PCI_VENDOR_CMEDIA, PCI_PRODUCT_CMEDIA_CMI8338A,
           "CMI8338A PCI Audio Device",
       },
@@ -5468,6 +5808,22 @@ static const struct pci_product pci_prod
           "LANfinity MiniPCI 10/100 Ethernet",
       },
       {
+           PCI_VENDOR_CONEXANT, PCI_PRODUCT_CONEXANT_CX2388X,
+           "CX23880/1/2/3 PCI Video/Audio Decoder",
+       },
+       {
+           PCI_VENDOR_CONEXANT, PCI_PRODUCT_CONEXANT_CX2388XAUDIO,
+           "CX23880/1/2/3 PCI Audio Port",
+       },
+       {
+           PCI_VENDOR_CONEXANT, PCI_PRODUCT_CONEXANT_CX2388XMPEG,
+           "CX23880/1/2/3 PCI MPEG Port",
+       },
+       {
+           PCI_VENDOR_CONEXANT, PCI_PRODUCT_CONEXANT_CX2388XIR,
+           "CX23880/1/2/3 PCI IR Port",
+       },
+       {
           PCI_VENDOR_CONTAQ, PCI_PRODUCT_CONTAQ_82C599,
           "82C599 PCI-VLB Bridge",
       },
@@ -6276,6 +6632,22 @@ static const struct pci_product pci_prod
           "88SX6041 SATA",
       },
       {
+           PCI_VENDOR_MARVELL, PCI_PRODUCT_MARVELL_88SE6101,
+           "88SE6101 single-port PATA133 Controller",
+       },
+       {
+           PCI_VENDOR_MARVELL, PCI_PRODUCT_MARVELL_88SE6121,
+           "88SE6121 SATA II Controller",
+       },
+       {
+           PCI_VENDOR_MARVELL, PCI_PRODUCT_MARVELL_88SE614X,
+           "88SE614X SATA II PCI-E Controller",
+       },
+       {
+           PCI_VENDOR_MARVELL, PCI_PRODUCT_MARVELL_88SE6145,
+           "88SE6145 SATA II PCI-E Controller",
+       },
+       {
           PCI_VENDOR_MARVELL, PCI_PRODUCT_MARVELL_GT64130,
           "GT-64130 System Controller",
       },
@@ -6505,7 +6877,15 @@ static const struct pci_product pci_prod
       },
       {
           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_ISABRIDGE,
-           "ISA Bridge w/PnP",
+           "Fire Coral ISA Bridge w/PnP",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_POWERWAVE,
+           "PowerWave Graphics Adapter",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_IDAHO,
+           "Idaho PCI Bridge",
       },
       {
           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_CPUBRIDGE,
@@ -6520,6 +6900,14 @@ static const struct pci_product pci_prod
           "GXT-150P 2D Accelerator",
       },
       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_CARRERA,
+           "Carrera PCI Bridge",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_82G2675,
+           "82G2675 SCSI-2 Fast Controller",
+       },
+       {
           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_MCABRIDGE2,
           "MCA Bridge",
       },
@@ -6528,10 +6916,22 @@ static const struct pci_product pci_prod
           "82351 PCI-PCI Bridge",
       },
       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_MONNAV,
+           "Montana/Nevada PCI Bridge and Memory Controller",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_PYTHON,
+           "Python PCI-PCI Bridge",
+       },
+       {
           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_SERVERAID,
           "ServeRAID",
       },
       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_GXT250P,
+           "GXT-250P Graphics Adapter",
+       },
+       {
           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_OLYMPIC,
           "16/4 Token Ring",
       },
@@ -6552,14 +6952,46 @@ static const struct pci_product pci_prod
           "Turboways 25 ATM",
       },
       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_GXT500P,
+           "GXT-500P/GXT550P Graphics Adapter",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_I82557B,
+           "i82557B 10/100 Ethernet",
+       },
+       {
           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_GXT800P,
-           "GXT-800P",
+           "GXT-800P Graphics Adapter",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_EADSPCI,
+           "EADS PCI-PCI Bridge",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_GXT3000P,
+           "GXT-3000P Graphics Adapter",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_GXT3000P2,
+           "GXT-3000P Graphics Adapter(2)",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_GXT2000P,
+           "GXT-2000P Graphics Adapter",
       },
       {
           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_OLYMPIC2,
           "Olympic 2 Token Ring",
       },
       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_CPC71064,
+           "CPC710 Dual Bridge and Memory Controller (PCI64)",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_CPC71032,
+           "CPC710 Dual Bridge and Memory Controller (PCI32)",
+       },
+       {
           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_TPAUDIO,
           "ThinkPad 600X/A20/T20/T22 Audio",
       },
@@ -6568,6 +7000,18 @@ static const struct pci_product pci_prod
           "PPC 405GP PCI Bridge",
       },
       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_GXT4000P,
+           "GXT-4000P Graphics Adapter",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_GXT6000P,
+           "GXT-6000P Graphics Adapter",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_GXT300P,
+           "GXT-300P Graphics Adapter",
+       },
+       {
           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_133PCIX,
           "133 PCI-X Bridge",
       },
@@ -6576,6 +7020,26 @@ static const struct pci_product pci_prod
           "ServeRAID 4/5",
       },
       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_440GP,
+           "PPC 440GP PCI Bridge",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_IBMETHER,
+           "10/100 Ethernet",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_GXT6500P,
+           "GXT-6500P Graphics Adapter",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_GXT4500P,
+           "GXT-4500P Graphics Adapter",
+       },
+       {
+           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_GXT135P,
+           "GXT-135P Graphics Adapter",
+       },
+       {
           PCI_VENDOR_IBM, PCI_PRODUCT_IBM_MPIC2,
           "MPIC-II",
       },
@@ -6664,6 +7128,14 @@ static const struct pci_product pci_prod
           "80321 I/O Processor",
       },
       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_IOP333_A,
+           "IOP333 PCI Express-to-PCI Bridge #0",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_IOP333_B,
+           "IOP333 PCI Express-to-PCI Bridge #1",
+       },
+       {
           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_6700PXH_PCIE0,
           "6700PXH PCI Express-to-PCI Bridge #0",
       },
@@ -8004,6 +8476,22 @@ static const struct pci_product pci_prod
           "82801H LPC Interface Bridge",
       },
       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801HEM_LPC,
+           "82801HEM LPC",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801HH_LPC,
+           "82801HH LPC Interface Bridge",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801HO_LPC,
+           "82801HO LPC Interface Bridge",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801HBM_LPC,
+           "82801HBM LPC Interface Bridge",
+       },
+       {
           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801H_SATA_1,
           "82801H SATA Controller",
       },
@@ -8096,10 +8584,6 @@ static const struct pci_product pci_prod
           "82801H High Definition Audio Controller",
       },
       {
-           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_IGP_C,
-           "82801I (C) LAN Controller",
-       },
-       {
           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801H_THERMAL,
           "82801H Thermal Controller",
       },
@@ -8108,6 +8592,22 @@ static const struct pci_product pci_prod
           "82801H IDE Controller",
       },
       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801IH_LPC,
+           "82801IH LPC Interface Bridge",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801IO_LPC,
+           "82801IO LPC Interface Bridge",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801IR_LPC,
+           "82801IR LPC Interface Bridge",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801IB_LPC,
+           "82801IB LPC Interface Bridge",
+       },
+       {
           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_SATA_1,
           "82801I SATA Controller with 4 ports",
       },
@@ -8116,10 +8616,90 @@ static const struct pci_product pci_prod
           "82801I SATA Controller with 2 ports",
       },
       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_SATA_AHCI6,
+           "82801I AHCI SATA Controller with 6 ports",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_SATA_AHCI4,
+           "82801I AHCI SATA Controller with 4 ports",
+       },
+       {
           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_SATA_3,
           "82801I SATA Controller with 2 ports",
       },
       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_SMB,
+           "82801I SMBus Controller",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_THERMAL,
+           "82801I Thermal Controller",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_USB_1,
+           "82801I USB UHCI Controller",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_USB_2,
+           "82801I USB UHCI Controller",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_USB_3,
+           "82801I USB UHCI Controller",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_USB_4,
+           "82801I USB UHCI Controller",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_USB_5,
+           "82801I USB UHCI Controller",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_USB_6,
+           "82801I USB UHCI Controller",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_EHCI_1,
+           "82801I USB EHCI Controller",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_EHCI_2,
+           "82801I USB EHCI Controller",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_HDA,
+           "82801I High Definition Audio Controller",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_EXP_1,
+           "82801I PCI Express Port #1",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_EXP_2,
+           "82801I PCI Express Port #2",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_EXP_3,
+           "82801I PCI Express Port #3",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_EXP_4,
+           "82801I PCI Express Port #4",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_EXP_5,
+           "82801I PCI Express Port #5",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_EXP_6,
+           "82801I PCI Express Port #6",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_IGP_C,
+           "82801I (C) LAN Controller",
+       },
+       {
           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82965Q_HB,
           "82965Q Host Bridge",
       },
@@ -8136,6 +8716,54 @@ static const struct pci_product pci_prod
           "82965Q Integrated Graphics Device",
       },
       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82965G_HB,
+           "82965G Host Bridge",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82965G_EXP,
+           "82965G PCI Express Bridge",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82965G_IGD,
+           "82965G Integrated Graphics Device",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82965G_IGD_1,
+           "82965G Integrated Graphics Device",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82G33_HB,
+           "82G33/P35 Host Bridge",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82G33_EXP,
+           "82G33 PCI Express Port",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82G33_IGD,
+           "82G33 Integrated Graphics Device",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82G33_IGD_1,
+           "82G33 Integrated Graphics Device",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_LAN,
+           "82801I LAN Controller",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82965PM_HB,
+           "82965PM Host Bridge",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82965PM_IGD,
+           "82965PM Integrated Graphics Device",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82965PM_IGD_1,
+           "82965PM Integrated Graphics Device",
+       },
+       {
           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_31244,
           "31244 Serial ATA Controller",
       },
@@ -8248,6 +8876,14 @@ static const struct pci_product pci_prod
           "PRO/Wireless LAN 3945ABG Mini-PCI Adapter",
       },
       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_PRO_WL_4965AGN_1,
+           "PRO/Wireless LAN 4965AGN Mini-PCI Adapter",
+       },
+       {
+           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_PRO_WL_4965AGN_2,
+           "PRO/Wireless LAN 4965AGN Mini-PCI Adapter",
+       },
+       {
           PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_80312_ATU,
           "80310 ATU",
       },
@@ -9112,14 +9748,26 @@ static const struct pci_product pci_prod
           "SAS1068",
       },
       {
+           PCI_VENDOR_SYMBIOS, PCI_PRODUCT_SYMBIOS_SAS1068_2,
+           "SAS1068",
+       },
+       {
           PCI_VENDOR_SYMBIOS, PCI_PRODUCT_SYMBIOS_SAS1064E,
           "SAS1064E",
       },
       {
+           PCI_VENDOR_SYMBIOS, PCI_PRODUCT_SYMBIOS_SAS1064E_2,
+           "SAS1064E",
+       },
+       {
           PCI_VENDOR_SYMBIOS, PCI_PRODUCT_SYMBIOS_SAS1068E,
           "SAS1068E",
       },
       {
+           PCI_VENDOR_SYMBIOS, PCI_PRODUCT_SYMBIOS_SAS1068E_2,
+           "SAS1068E",
+       },
+       {
           PCI_VENDOR_SYMBIOS, PCI_PRODUCT_SYMBIOS_SAS1066E,
           "SAS1066E",
       },
@@ -9224,6 +9872,10 @@ static const struct pci_product pci_prod
           "Video",
       },
       {
+           PCI_VENDOR_PARALLELS, PCI_PRODUCT_PARALLELS_VIDEO2,
+           "Video II",
+       },
+       {
           PCI_VENDOR_NEC, PCI_PRODUCT_NEC_USB,
           "USB Host Controller",
       },
@@ -9384,6 +10036,10 @@ static const struct pci_product pci_prod
           "RIVA TNT2 Model 64",
       },
       {
+           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP04_SMBUS,
+           "MCP04 SMBus",
+       },
+       {
           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP04_IDE,
           "MCP04 IDE",
       },
@@ -9552,12 +10208,16 @@ static const struct pci_product pci_prod
           "nForce2 Ultra 400 Serial ATA Controller",
       },
       {
+           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE3_PCIB,
+           "nForce3 PCI-ISA bridge",
+       },
+       {
           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE3_PCHB,
           "nForce3 Host-PCI bridge",
       },
       {
-           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE3_PCIB,
-           "nForce3 PCI-ISA bridge",
+           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE3_PPB2,
+           "nForce3 PCI-PCI",
       },
       {
           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE3_SMBUS,
@@ -9640,6 +10300,14 @@ static const struct pci_product pci_prod
           "nForce3 250 Serial ATA Controller",
       },
       {
+           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_XBOX_SMBUS,
+           "Xbox nForce SMBus Controller",
+       },
+       {
+           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_XBOX_PCHB,
+           "Xbox nForce Host-PCI bridge",
+       },
+       {
           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_ALADDINTNT2,
           "Aladdin TNT2",
       },
@@ -9769,7 +10437,7 @@ static const struct pci_product pci_prod
       },
       {
           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE_LAN,
-           "nForce Ethetnet",
+           "nForce Ethernet",
       },
       {
           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE2_PCHB,
@@ -9916,6 +10584,10 @@ static const struct pci_product pci_prod
           "GeForce FX 5800 Ultra",
       },
       {
+           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_XBOXFB,
+           "Xbox Frame Buffer",
+       },
+       {
           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_GEFORCE_FX5800,
           "GeForce FX 5800",
       },
@@ -10029,13 +10701,17 @@ static const struct pci_product pci_prod
       },
       {
           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP55_SATA,
-           "nForce MCP55 Seria ATA Controller",
+           "nForce MCP55 Serial ATA Controller",
       },
       {
           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP55_SATA2,
           "nForce MCP55 Serial ATA Controller",
       },
       {
+           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_GF_GO_7600,
+           "GeForce Go 7600",
+       },
+       {
           PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP61_ISA,
           "nForce MCP61 PCI-ISA Bridge",
       },
@@ -10536,6 +11212,10 @@ static const struct pci_product pci_prod
           "HD-2000 HDTV video capture",
       },
       {
+           PCI_VENDOR_PCHDTV, PCI_PRODUCT_PCHDTV_HD5500,
+           "HD-5500 HDTV video capture",
+       },
+       {
           PCI_VENDOR_PCTECH, PCI_PRODUCT_PCTECH_RZ1000,
           "RZ1000",
       },
@@ -10553,7 +11233,11 @@ static const struct pci_product pci_prod
       },
       {
           PCI_VENDOR_PLX, PCI_PRODUCT_PLX_9030,
-           "9030 Modem 4 port",
+           "9030 I/O Accelrator",
+       },
+       {
+           PCI_VENDOR_PLX, PCI_PRODUCT_PLX_9050,
+           "9050 I/O Accelrator",
       },
       {
           PCI_VENDOR_PLX, PCI_PRODUCT_PLX_9054,
@@ -10868,6 +11552,14 @@ static const struct pci_product pci_prod
           "5C552 PCI-CardBus bridge/Firewire",
       },
       {
+           PCI_VENDOR_RICOH, PCI_PRODUCT_RICOH_Rx5C822,
+           "5C822 SD/MMC Host Adapter",
+       },
+       {
+           PCI_VENDOR_RICOH, PCI_PRODUCT_RICOH_Rx5C843,
+           "5C843 MMC Host Controller",
+       },
+       {
           PCI_VENDOR_RISCOM, PCI_PRODUCT_RISCOM_N2,
           "N2",
       },
@@ -11120,6 +11812,10 @@ static const struct pci_product pci_prod
           "CSB6 southbridge",
       },
       {
+           PCI_VENDOR_SERVERWORKS, PCI_PRODUCT_SERVERWORKS_HT1000SB,
+           "HT1000SB southbridge",
+       },
+       {
           PCI_VENDOR_SERVERWORKS, PCI_PRODUCT_SERVERWORKS_OSB4_IDE,
           "OSB4 IDE",
       },
@@ -11128,6 +11824,10 @@ static const struct pci_product pci_prod
           "CSB5 IDE",
       },
       {
+           PCI_VENDOR_SERVERWORKS, PCI_PRODUCT_SERVERWORKS_HT1000_IDE,
+           "HT-1000 IDE Controller",
+       },
+       {
           PCI_VENDOR_SERVERWORKS, PCI_PRODUCT_SERVERWORKS_CSB6_RAID,
           "CSB6 IDE/RAID",
       },
@@ -11164,7 +11864,11 @@ static const struct pci_product pci_prod
           "Frodo8 SATA",
       },
       {
-           PCI_VENDOR_SERVERWORKS, PCI_PRODUCT_SERVERWORKS_HT1000_SATA,
+           PCI_VENDOR_SERVERWORKS, PCI_PRODUCT_SERVERWORKS_HT1000_SATA_1,
+           "HT-1000 SATA",
+       },
+       {
+           PCI_VENDOR_SERVERWORKS, PCI_PRODUCT_SERVERWORKS_HT1000_SATA_2,
           "HT-1000 SATA",
       },
       {
@@ -12360,14 +13064,30 @@ static const struct pci_product pci_prod
           "VT6305 IEEE 1394 Host Controller",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_K8M800_0,
+           "K8M800 Host",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_K8T890_0,
+           "K8T890 Host",
+       },
+       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_KT880,
           "KT880 CPU to PCI Bridge",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_K8HTB_0,
+           "K8HTB Host",
+       },
+       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8363_HB,
           "VT8363 (Apollo KT133) Host Bridge",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT3351_HB_0351,
+           "VT3351 Host Bridge",
+       },
+       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8371_HB,
           "VT8371 (Apollo KX133) Host Bridge",
       },
@@ -12392,6 +13112,10 @@ static const struct pci_product pci_prod
           "VT82C576 3V",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_CX700_IDE,
+           "CX700 IDE Controller",
+       },
+       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT82C580VP,
           "VT82C580 (Apollo VP) Host-PCI Bridge",
       },
@@ -12452,6 +13176,10 @@ static const struct pci_product pci_prod
           "KT880 CPU to PCI Bridge",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT3351_HB_1351,
+           "VT3351 Host Bridge",
+       },
+       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT82C586_IDE,
           "VT82C586 IDE Controller",
       },
@@ -12464,6 +13192,26 @@ static const struct pci_product pci_prod
           "KT880 CPU to PCI Bridge",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT3351_HB_2351,
+           "VT3351 Host Bridge",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8251_PPB_287A,
+           "VT8251 PCI-PCI Bridge",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8251_PCIE1,
+           "VT8251 PCIE Root Port1",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8251_PCIE2,
+           "VT8251 PCIE Root Port2",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8251_VLINK,
+           "VT8251 Ultra VLINK Controller",
+       },
+       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT83C572,
           "VT83C572 USB Controller",
       },
@@ -12544,6 +13292,14 @@ static const struct pci_product pci_prod
           "VT8237 Integrated SATA Controller",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_K8HTB,
+           "K8HTB Host",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT6421_RAID,
+           "VT6421 Serial RAID Controller",
+       },
+       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT3314_IG,
           "VT3314 CN900 UniChrome Integrated Graphics",
       },
@@ -12552,8 +13308,8 @@ static const struct pci_product pci_prod
           "VT8237R Integrated SATA Controller",
       },
       {
-           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT6421_RAID,
-           "VT6421 Serial RAID Controller",
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT3351_HB_3351,
+           "VT3351 Host Bridge",
       },
       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_KT880_3,
@@ -12584,10 +13340,30 @@ static const struct pci_product pci_prod
           "VT8237A/VT82C586A PCI-ISA Bridge",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8237S_ISA,
+           "VT8237S PCI-ISA Bridge",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8237A_PPB,
+           "VT8237A PCI-PCI Bridge",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8237A_HB,
+           "VT8237A Host Bridge",
+       },
+       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_KT880_4,
           "KT880 CPU to PCI Bridge",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT3351_HB_4351,
+           "VT3351 Host Bridge",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT3351_IOAPIC,
+           "VT3351 I/O APIC Interrupt Controller",
+       },
+       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT86C100A,
           "VT86C100A (Rhine-II) 10/100 Ethernet",
       },
@@ -12600,6 +13376,10 @@ static const struct pci_product pci_prod
           "KT880 CPU to PCI Bridge",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT3351_HB_7351,
+           "VT3351 Host Bridge",
+       },
+       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8231,
           "VT8231 PCI-ISA Bridge",
       },
@@ -12632,6 +13412,10 @@ static const struct pci_product pci_prod
           "VT8605 (Apollo ProMedia 133) Host-AGP Bridge",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_K8T890_PPB_A238,
+           "K8T890 PCI-PCI Bridge",
+       },
+       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8633AGP,
           "VT8633 (Apollo Pro 266) CPU-AGP Bridge",
       },
@@ -12644,10 +13428,34 @@ static const struct pci_product pci_prod
           "VT8377 CPU-AGP Bridge",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_K8HTB_AGP,
+           "K8HTB AGP",
+       },
+       {
           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT8377CEAGP,
           "VT8377CE CPU-AGP Bridge",
       },
       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_VT3237_PPB,
+           "K8T890 North / VT8237 South PCI-PCI Bridge",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_K8T890_PPB_C238,
+           "K8T890 PCI-PCI Bridge",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_K8T890_PPB_D238,
+           "K8T890 PCI-PCI Bridge",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_K8T890_PPB_E238,
+           "K8T890 PCI-PCI Bridge",
+       },
+       {
+           PCI_VENDOR_VIATECH, PCI_PRODUCT_VIATECH_K8T890_PPB_F238,
+           "K8T890 PCI-PCI Bridge",
+       },
+       {
           PCI_VENDOR_VORTEX, PCI_PRODUCT_VORTEX_GDT_60x0,
           "GDT6000/6020/6050",
       },
@@ -13080,6 +13888,10 @@ static const struct pci_product pci_prod
           "CF32A CompactFlash Adapter",
       },
       {
+           PCI_VENDOR_WORKBIT, PCI_PRODUCT_WORKBIT_NPATA32_CF32A_BUFFALO,
+           "CF32A CF Adapter (BUFFALO)",
+       },
+       {
           PCI_VENDOR_WORKBIT, PCI_PRODUCT_WORKBIT_NPATA32_KME,
           "NPATA-32 IDE (KME)",
       },
@@ -13136,4 +13948,4 @@ static const struct pci_product pci_prod
           "Video Controller",
       },
};
-const int pci_nproducts = 2688;
+const int pci_nproducts = 2889;
Index: sys/dev/pci/piixide.c
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/piixide.c,v
retrieving revision 1.35.2.1
diff -u -p -u -r1.35.2.1 piixide.c
--- sys/dev/pci/piixide.c       24 Oct 2007 22:00:15 -0000      1.35.2.1
+++ sys/dev/pci/piixide.c       7 Mar 2008 08:41:31 -0000
@@ -48,6 +48,7 @@ static u_int32_t piix_setup_idetim_timin
static u_int32_t piix_setup_idetim_drvs(struct ata_drive_datas *);
static u_int32_t piix_setup_sidetim_timings(u_int8_t, u_int8_t, u_int8_t);
static void piixsata_chip_map(struct pciide_softc*, struct pci_attach_args *);
+static int piix_dma_init(void *, int, int, void *, size_t, int);

static void piixide_powerhook(int, void *);
static int  piixide_match(struct device *, struct cfdata *, void *);
@@ -326,14 +327,16 @@ piix_chip_map(struct pciide_softc *sc, s
       if (pciide_chipen(sc, pa) == 0)
               return;

-       aprint_normal("%s: bus-master DMA support present",
+       aprint_verbose("%s: bus-master DMA support present",
           sc->sc_wdcdev.sc_atac.atac_dev.dv_xname);
       pciide_mapreg_dma(sc, pa);
-       aprint_normal("\n");
+       aprint_verbose("\n");
       sc->sc_wdcdev.sc_atac.atac_cap |= ATAC_CAP_DATA16 | ATAC_CAP_DATA32;
       if (sc->sc_dma_ok) {
               sc->sc_wdcdev.sc_atac.atac_cap |= ATAC_CAP_DMA;
               sc->sc_wdcdev.irqack = pciide_irqack;
+               /* Do all revisions require DMA alignment workaround? */
+               sc->sc_wdcdev.dma_init = piix_dma_init;
               switch(sc->sc_pp->ide_product) {
               case PCI_PRODUCT_INTEL_82371AB_IDE:
               case PCI_PRODUCT_INTEL_82440MX_IDE:
@@ -828,16 +831,18 @@ piixsata_chip_map(struct pciide_softc *s
       if (pciide_chipen(sc, pa) == 0)
               return;

-       aprint_normal("%s: bus-master DMA support present",
+       aprint_verbose("%s: bus-master DMA support present",
           sc->sc_wdcdev.sc_atac.atac_dev.dv_xname);
       pciide_mapreg_dma(sc, pa);
-       aprint_normal("\n");
+       aprint_verbose("\n");

       sc->sc_wdcdev.sc_atac.atac_cap |= ATAC_CAP_DATA16 | ATAC_CAP_DATA32;
       sc->sc_wdcdev.sc_atac.atac_pio_cap = 4;
       if (sc->sc_dma_ok) {
               sc->sc_wdcdev.sc_atac.atac_cap |= ATAC_CAP_DMA | ATAC_CAP_UDMA;
               sc->sc_wdcdev.irqack = pciide_irqack;
+               /* Do all revisions require DMA alignment workaround? */
+               sc->sc_wdcdev.dma_init = piix_dma_init;
               sc->sc_wdcdev.sc_atac.atac_dma_cap = 2;
               sc->sc_wdcdev.sc_atac.atac_udma_cap = 6;
       }
@@ -867,3 +872,15 @@ piixsata_chip_map(struct pciide_softc *s
                   pciide_pci_intr);
       }
}
+
+static int
+piix_dma_init(void *v, int channel, int drive, void *databuf,
+    size_t datalen, int flags)
+{
+
+       /* use PIO for unaligned transfer */
+       if (((uintptr_t)databuf) & 0x1)
+               return EINVAL;
+
+       return pciide_dma_init(v, channel, drive, databuf, datalen, flags);
+}
Index: sys/dev/pci/svwsata.c
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/svwsata.c,v
retrieving revision 1.7
diff -u -p -u -r1.7 svwsata.c
--- sys/dev/pci/svwsata.c       30 Nov 2006 19:32:37 -0000      1.7
+++ sys/dev/pci/svwsata.c       7 Mar 2008 08:41:32 -0000
@@ -57,7 +57,7 @@ static const struct pciide_product_desc
         "ServerWorks Frodo8 SATA Controller",
         svwsata_chip_map
       },
-       { PCI_PRODUCT_SERVERWORKS_HT1000_SATA,
+       { PCI_PRODUCT_SERVERWORKS_HT1000_SATA_1,
         0,
         "ServerWorks HT-1000 SATA Controller",
         svwsata_chip_map