diff options
author | Len Brown <len.brown@intel.com> | 2008-11-06 20:51:59 -0500 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2008-11-06 20:51:59 -0500 |
commit | d17cb18a07c587b8f9ff174a1bf6d03413eabe64 (patch) | |
tree | 8ee13e9c4fa88208e3f09cc1137653c14802137a | |
parent | f4a9bc4c7de4cef83e86a7052eb2e88b193668e4 (diff) | |
download | blackbird-op-linux-d17cb18a07c587b8f9ff174a1bf6d03413eabe64.tar.gz blackbird-op-linux-d17cb18a07c587b8f9ff174a1bf6d03413eabe64.zip |
Revert "ACPI: Ingore the RESET_REG_SUP bit when using ACPI reset mechanism"
This reverts commit 8fd145917fb62368a9b80db59562c20576238f5a.
http://bugzilla.kernel.org/show_bug.cgi?id=11942
Signed-off-by: Len Brown <len.brown@intel.com>
-rw-r--r-- | drivers/acpi/reboot.c | 25 |
1 files changed, 3 insertions, 22 deletions
diff --git a/drivers/acpi/reboot.c b/drivers/acpi/reboot.c index 755baf2ca70a..a6b662c00b67 100644 --- a/drivers/acpi/reboot.c +++ b/drivers/acpi/reboot.c @@ -15,28 +15,9 @@ void acpi_reboot(void) rr = &acpi_gbl_FADT.reset_register; - /* - * Is the ACPI reset register supported? - * - * According to ACPI 3.0, FADT.flags.RESET_REG_SUP indicates - * whether the ACPI reset mechanism is supported. - * - * However, some boxes have this bit clear, yet a valid - * ACPI_RESET_REG & RESET_VALUE, and ACPI reboot is the only - * mechanism that works for them after S3. - * - * This suggests that other operating systems may not be checking - * the RESET_REG_SUP bit, and are using other means to decide - * whether to use the ACPI reboot mechanism or not. - * - * So when acpi reboot is requested, - * only the reset_register is checked. If the following - * conditions are met, it indicates that the reset register is supported. - * a. reset_register is not zero - * b. the access width is eight - * c. the bit_offset is zero - */ - if (!(rr->address) || rr->bit_width != 8 || rr->bit_offset != 0) + /* Is the reset register supported? */ + if (!(acpi_gbl_FADT.flags & ACPI_FADT_RESET_REGISTER) || + rr->bit_width != 8 || rr->bit_offset != 0) return; reset_value = acpi_gbl_FADT.reset_value; |