diff options
author | rodrigc <rodrigc@FreeBSD.org> | 2005-12-08 18:55:15 +0000 |
---|---|---|
committer | rodrigc <rodrigc@FreeBSD.org> | 2005-12-08 18:55:15 +0000 |
commit | 82f361258c95855bb9a218b0a0c30ab1f68390bb (patch) | |
tree | 290cd361a67fe82a8b6d546d5cef347afebf4dae /sys/i386 | |
parent | a1d5c4c24e89dacb77b7fe9289d81bedc65377a4 (diff) | |
download | FreeBSD-src-82f361258c95855bb9a218b0a0c30ab1f68390bb.zip FreeBSD-src-82f361258c95855bb9a218b0a0c30ab1f68390bb.tar.gz |
Add support for 7320 and 915 PCIe chipsets.
Submitted by: Gavin Atkinson <gavin.atkinson at ury dot york dot ac dot uk>
PR: kern/79139
Reviewed by: scottl
Diffstat (limited to 'sys/i386')
-rw-r--r-- | sys/i386/pci/pci_cfgreg.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/sys/i386/pci/pci_cfgreg.c b/sys/i386/pci/pci_cfgreg.c index 869649d..85e9f07 100644 --- a/sys/i386/pci/pci_cfgreg.c +++ b/sys/i386/pci/pci_cfgreg.c @@ -159,15 +159,19 @@ pci_cfgregopen(void) * This also implies that it can do PCIe extended config cycles. */ - /* Check for the Intel 7520 and 925 chipsets */ + /* Check for supported chipsets */ vid = pci_cfgregread(0, 0, 0, 0x0, 2); did = pci_cfgregread(0, 0, 0, 0x2, 2); - if ((vid == 0x8086) && (did == 0x3590)) { - pciebar = pci_cfgregread(0, 0, 0, 0xce, 2) << 16; - pciereg_cfgopen(); - } else if ((vid == 0x8086) && (did == 0x2580)) { - pciebar = pci_cfgregread(0, 0, 0, 0x48, 4); - pciereg_cfgopen(); + if (vid == 0x8086) { + if (did == 0x3590 || did == 0x3592) { + /* Intel 7520 or 7320 */ + pciebar = pci_cfgregread(0, 0, 0, 0xce, 2) << 16; + pciereg_cfgopen(); + } else if (did == 0x2580 || did == 0x2584) { + /* Intel 915 or 925 */ + pciebar = pci_cfgregread(0, 0, 0, 0x48, 4); + pciereg_cfgopen(); + } } return(1); |