summaryrefslogtreecommitdiff
path: root/sys/arch
diff options
context:
space:
mode:
authorJonathan Matthew <jmatthew@cvs.openbsd.org>2014-12-16 23:13:21 +0000
committerJonathan Matthew <jmatthew@cvs.openbsd.org>2014-12-16 23:13:21 +0000
commit7cce7fc83f7fb15c593532d9ae81fdb0f979798a (patch)
tree3312bd984b48cfcd376d2d5cf6d3485ea196faa7 /sys/arch
parent656b6247f2cf217ef6b4414c833a7a006da5d522 (diff)
Temporarily expand the pci memory range to suit Dell 13G servers.
They have devices outside the 36 bit range that their firmware needs to talk to, and they get constant acpi interrupts if it can't. We should get the necessary ranges via ACPI, but for now just make the allowed range bigger. ok kettenis@ deraadt@
Diffstat (limited to 'sys/arch')
-rw-r--r--sys/arch/amd64/pci/pci_machdep.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/sys/arch/amd64/pci/pci_machdep.c b/sys/arch/amd64/pci/pci_machdep.c
index 4098fa2bb13..650ecb656a2 100644
--- a/sys/arch/amd64/pci/pci_machdep.c
+++ b/sys/arch/amd64/pci/pci_machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pci_machdep.c,v 1.59 2014/04/19 11:53:42 kettenis Exp $ */
+/* $OpenBSD: pci_machdep.c,v 1.60 2014/12/16 23:13:20 jmatthew Exp $ */
/* $NetBSD: pci_machdep.c,v 1.3 2003/05/07 21:33:58 fvdl Exp $ */
/*-
@@ -622,13 +622,17 @@ pci_init_extents(void)
* here. As long as vendors continue to support
* 32-bit operating systems, we should never see BARs
* outside that region.
+ *
+ * Dell 13G servers have important devices outside the
+ * 36-bit address space. Until we can extract the address
+ * ranges from ACPI, expand the allowed range to suit.
*/
pcimem_ex = extent_create("pcimem", 0, 0xffffffffffffffffUL,
M_DEVBUF, NULL, 0, EX_NOWAIT);
if (pcimem_ex == NULL)
return;
- extent_alloc_region(pcimem_ex, 0x1000000000UL,
- 0xfffffff000000000UL, EX_NOWAIT);
+ extent_alloc_region(pcimem_ex, 0x40000000000UL,
+ 0xfffffc0000000000UL, EX_NOWAIT);
for (bmp = bios_memmap; bmp->type != BIOS_MAP_END; bmp++) {
/*