The implementation of acpi_scan_rsdp() in linux 2.6.3 does not correctly locate the RSDP on an Acer TravelMate C100 with BIOS versions R01-A4F or R01-A4K BIOS version R01-A4K has an RSDP signature at 0xEC2D0, with zero checksum and RSDT pointer, and another RSDP signature at 0xFE030, with a valid checksum and RSDT pointer. Currently acpi_scan_rsdp() in arch/i386/kernel/acpi/boot.c searches for a RSDP signature, and returns the first one it finds. If this does not have a valid checksum, acpi_table_init() will return an error (and since 2.6.2, this causes ACPI not to be initialised) ACPI spec 2.0c, section 5.4.2.1 says: "OSPM finds the Root System Description Pointer (RSDP) structure by searching physical memory ranges on 16-byte boundaries for a valid Root System Description Pointer structure signature and checksum match" It's at least arguably correct to contine the search until a RSDP signature and valid checksum is found. The attached patch against 2.6.3 demonstrates a (not-very-good) way of doing this. (It also adds a printk which reports when ACPI is disabled because the RSDP is invalid) extract from dmesg without patch: ACPI: RSDP (v000 Acer ) @ 0x000ec2d0 >>> ERROR: Invalid checksum extract from dmesg with patch: ACPI: RSDP (v000 Acer ) @ 0x000fe030 ACPI: RSDT (v001 Acer TM100 0x00000001 MSFT 0x00000001) @ 0x0ffe0000 ACPI: FADT (v001 Acer TM100 0x00000001 MSFT 0x00000001) @ 0x0ffe0054 ACPI: BOOT (v001 Acer TM100 0x00000001 MSFT 0x00000001) @ 0x0ffe002c ACPI: DSDT (v001 Acer AN100 0x00001000 MSFT 0x0100000e) @ 0x000000002