summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorimp <imp@FreeBSD.org>2004-10-06 07:26:52 +0000
committerimp <imp@FreeBSD.org>2004-10-06 07:26:52 +0000
commit0ccb4c99715caecfe81b3e952c3e939dd31fcfef (patch)
tree2efe89eee0ceaf67c9ff36e42afccc0a3b9b5736 /sys
parentdc2b0adf745acb8c0b72887899719e52edc96631 (diff)
downloadFreeBSD-src-0ccb4c99715caecfe81b3e952c3e939dd31fcfef.zip
FreeBSD-src-0ccb4c99715caecfe81b3e952c3e939dd31fcfef.tar.gz
For older systems with ACPI which don't have a pci <-> pci bridge,
allocate unallocated memory resources from the top 32MB of the address space rather than the top 2GB. While the latter works on some chipsets, it fails badly on others. 32MB is more conservative and matches what cheap harware from this era is hardwired to pass.
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/acpica/acpi_pcib_acpi.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/dev/acpica/acpi_pcib_acpi.c b/sys/dev/acpica/acpi_pcib_acpi.c
index 350bb89..3077764 100644
--- a/sys/dev/acpica/acpi_pcib_acpi.c
+++ b/sys/dev/acpica/acpi_pcib_acpi.c
@@ -305,16 +305,16 @@ acpi_pcib_acpi_alloc_resource(device_t dev, device_t child, int type, int *rid,
u_long start, u_long end, u_long count, u_int flags)
{
/*
- * If no memory preference is given, use upper 2GB slot most
+ * If no memory preference is given, use upper 32MB slot most
* bioses use for their memory window. Typically other bridges
* before us get in the way to assert their preferences on memory.
* Hardcoding like this sucks, so a more MD/MI way needs to be
* found to do it. This is typically only used on older laptops
- * that don't have pci busses behind pci bridge, so assuming < 2GB
+ * that don't have pci busses behind pci bridge, so assuming > 32MB
* is liekly OK.
*/
if (type == SYS_RES_MEMORY && start == 0UL && end == ~0UL)
- start = 0x80000000;
+ start = 0xfe000000;
return (bus_generic_alloc_resource(dev, child, type, rid, start, end,
count, flags));
}
OpenPOWER on IntegriCloud