aboutsummaryrefslogtreecommitdiff
path: root/sys/i386/pci/pci_cfgreg.c
diff options
context:
space:
mode:
authorCraig Rodrigues <rodrigc@FreeBSD.org>2005-12-08 18:55:15 +0000
committerCraig Rodrigues <rodrigc@FreeBSD.org>2005-12-08 18:55:15 +0000
commit16f99fe169d46229325cae112a2bf16716dcd64d (patch)
tree290cd361a67fe82a8b6d546d5cef347afebf4dae /sys/i386/pci/pci_cfgreg.c
parent47d65ba4d0e841feb6bbcd5e0d6b23d2d02cef29 (diff)
downloadsrc-16f99fe169d46229325cae112a2bf16716dcd64d.tar.gz
src-16f99fe169d46229325cae112a2bf16716dcd64d.zip
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
Notes
Notes: svn path=/head/; revision=153243
Diffstat (limited to 'sys/i386/pci/pci_cfgreg.c')
-rw-r--r--sys/i386/pci/pci_cfgreg.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/sys/i386/pci/pci_cfgreg.c b/sys/i386/pci/pci_cfgreg.c
index 869649de34a9..85e9f07bc925 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);