Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[pandora-kernel.git] / drivers / acpi / reboot.c
index 93f9114..a6c77e8 100644 (file)
@@ -15,9 +15,15 @@ void acpi_reboot(void)
 
        rr = &acpi_gbl_FADT.reset_register;
 
-       /* Is the reset register supported? */
-       if (!(acpi_gbl_FADT.flags & ACPI_FADT_RESET_REGISTER) ||
-           rr->bit_width != 8 || rr->bit_offset != 0)
+       /* ACPI reset register was only introduced with v2 of the FADT */
+
+       if (acpi_gbl_FADT.header.revision < 2)
+               return;
+
+       /* Is the reset register supported? The spec says we should be
+        * checking the bit width and bit offset, but Windows ignores
+        * these fields */
+       if (!(acpi_gbl_FADT.flags & ACPI_FADT_RESET_REGISTER))
                return;
 
        reset_value = acpi_gbl_FADT.reset_value;
@@ -45,6 +51,4 @@ void acpi_reboot(void)
                acpi_reset();
                break;
        }
-       /* Wait ten seconds */
-       acpi_os_stall(10000000);
 }