diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2000-01-27 01:05:20 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2000-01-27 01:05:20 +0000 |
commit | 546db14ee74118296f425f3b91634fb767d67290 (patch) | |
tree | 22b613a3da8d4bf663eec5e155af01b87fdf9094 /drivers/misc/acpi.c | |
parent | 1e25e41c4f5474e14452094492dbc169b800e4c8 (diff) |
Merge with Linux 2.3.23. The new bootmem stuff has broken various
platforms. At this time I've only verified that IP22 support compiles
and IP27 actually works.
Diffstat (limited to 'drivers/misc/acpi.c')
-rw-r--r-- | drivers/misc/acpi.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/misc/acpi.c b/drivers/misc/acpi.c index e6878dde6..03c39fb61 100644 --- a/drivers/misc/acpi.c +++ b/drivers/misc/acpi.c @@ -246,18 +246,18 @@ static int __init acpi_map_tables(void) struct acpi_table *rsdt; u32 *rsdt_entry; int rsdt_entry_count; - u8 *i; + unsigned long i; // search BIOS memory for RSDP for (i = ACPI_BIOS_ROM_BASE; i < ACPI_BIOS_ROM_END; i += 16) { - rsdp = (struct acpi_rsdp *) i; - if (readl(rsdp->signature) == ACPI_RSDP1_SIG - && readl(rsdp->signature + 1) == ACPI_RSDP2_SIG) { + rsdp = (struct acpi_rsdp *) phys_to_virt(i); + if (rsdp->signature[0] == ACPI_RSDP1_SIG && + rsdp->signature[1] == ACPI_RSDP2_SIG) { char oem[7]; int j; // strip trailing space and print OEM identifier - memcpy_fromio(oem, rsdp->oem, 6); + memcpy(oem, rsdp->oem, 6); oem[6] = '\0'; for (j = 5; j > 0 && (oem[j] == '\0' || oem[j] == ' '); @@ -275,7 +275,7 @@ static int __init acpi_map_tables(void) return -ENODEV; } // fetch RSDT from RSDP - rsdt = acpi_map_table(readl(&rsdp->rsdt)); + rsdt = acpi_map_table(rsdp->rsdt); if (!rsdt || rsdt->signature != ACPI_RSDT_SIG) { printk(KERN_ERR "ACPI: no RSDT found\n"); acpi_unmap_table(rsdt); |