Commit 227243a0 authored by Bob Moore's avatar Bob Moore Committed by Len Brown

ACPICA: Remove extra write for acpi_hw_clear_acpi_status

This function was writing an optional PM1B status register
twice.  The existing call to the low-level acpi_hw_register_write
automatically handles a possibly split PM1 A/B register.
ACPICA BZ 751.

http://www.acpica.org/bugzilla/show_bug.cgi?id=751Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
Signed-off-by: default avatarLin Ming <ming.m.lin@intel.com>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent c520abad
...@@ -71,7 +71,6 @@ acpi_hw_write_multiple(u32 value, ...@@ -71,7 +71,6 @@ acpi_hw_write_multiple(u32 value,
* RETURN: Status * RETURN: Status
* *
* DESCRIPTION: Clears all fixed and general purpose status bits * DESCRIPTION: Clears all fixed and general purpose status bits
* THIS FUNCTION MUST BE CALLED WITH INTERRUPTS DISABLED
* *
******************************************************************************/ ******************************************************************************/
...@@ -82,13 +81,13 @@ acpi_status acpi_hw_clear_acpi_status(void) ...@@ -82,13 +81,13 @@ acpi_status acpi_hw_clear_acpi_status(void)
ACPI_FUNCTION_TRACE(hw_clear_acpi_status); ACPI_FUNCTION_TRACE(hw_clear_acpi_status);
ACPI_DEBUG_PRINT((ACPI_DB_IO, "About to write %04X to %04X\n", ACPI_DEBUG_PRINT((ACPI_DB_IO, "About to write %04X to %0llX\n",
ACPI_BITMASK_ALL_FIXED_STATUS, ACPI_BITMASK_ALL_FIXED_STATUS,
(u16) acpi_gbl_xpm1a_status.address)); acpi_gbl_xpm1a_status.address));
lock_flags = acpi_os_acquire_lock(acpi_gbl_hardware_lock); lock_flags = acpi_os_acquire_lock(acpi_gbl_hardware_lock);
/* Clear the fixed events */ /* Clear the fixed events in PM1 A/B */
status = acpi_hw_register_write(ACPI_REGISTER_PM1_STATUS, status = acpi_hw_register_write(ACPI_REGISTER_PM1_STATUS,
ACPI_BITMASK_ALL_FIXED_STATUS); ACPI_BITMASK_ALL_FIXED_STATUS);
...@@ -96,16 +95,6 @@ acpi_status acpi_hw_clear_acpi_status(void) ...@@ -96,16 +95,6 @@ acpi_status acpi_hw_clear_acpi_status(void)
goto unlock_and_exit; goto unlock_and_exit;
} }
/* Write PM1B register if present */
if (acpi_gbl_xpm1b_status.address) {
status = acpi_write(ACPI_BITMASK_ALL_FIXED_STATUS,
&acpi_gbl_xpm1b_status);
if (ACPI_FAILURE(status)) {
goto unlock_and_exit;
}
}
/* Clear the GPE Bits in all GPE registers in all GPE blocks */ /* Clear the GPE Bits in all GPE registers in all GPE blocks */
status = acpi_ev_walk_gpe_list(acpi_hw_clear_gpe_block, NULL); status = acpi_ev_walk_gpe_list(acpi_hw_clear_gpe_block, NULL);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment