mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-29 16:10:58 +00:00
x86: acpi: Don't touch ACPI hardware in write_acpi_tables()
write_acpi_tables() currently touches ACPI hardware to switch to ACPI mode at the end. Move such operation out of this function, so that it only does what the function name tells us. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
This commit is contained in:
parent
a0609a8d19
commit
474a62bc74
2 changed files with 18 additions and 14 deletions
|
@ -179,17 +179,32 @@ __weak void board_final_cleanup(void)
|
|||
|
||||
int last_stage_init(void)
|
||||
{
|
||||
struct acpi_fadt __maybe_unused *fadt;
|
||||
|
||||
board_final_cleanup();
|
||||
|
||||
#if CONFIG_HAVE_ACPI_RESUME
|
||||
struct acpi_fadt *fadt = acpi_find_fadt();
|
||||
#ifdef CONFIG_HAVE_ACPI_RESUME
|
||||
fadt = acpi_find_fadt();
|
||||
|
||||
if (fadt != NULL && gd->arch.prev_sleep_state == ACPI_S3)
|
||||
if (fadt && gd->arch.prev_sleep_state == ACPI_S3)
|
||||
acpi_resume(fadt);
|
||||
#endif
|
||||
|
||||
write_tables();
|
||||
|
||||
#ifdef CONFIG_GENERATE_ACPI_TABLE
|
||||
fadt = acpi_find_fadt();
|
||||
|
||||
/* Don't touch ACPI hardware on HW reduced platforms */
|
||||
if (fadt && !(fadt->flags & ACPI_FADT_HW_REDUCED_ACPI)) {
|
||||
/*
|
||||
* Other than waiting for OSPM to request us to switch to ACPI
|
||||
* mode, do it by ourselves, since SMI will not be triggered.
|
||||
*/
|
||||
enter_acpi_mode(fadt->pm1a_cnt_blk);
|
||||
}
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -12,7 +12,6 @@
|
|||
#include <dm/uclass-internal.h>
|
||||
#include <version.h>
|
||||
#include <asm/acpi/global_nvs.h>
|
||||
#include <asm/acpi.h>
|
||||
#include <asm/acpi_table.h>
|
||||
#include <asm/ioapic.h>
|
||||
#include <asm/lapic.h>
|
||||
|
@ -444,16 +443,6 @@ ulong write_acpi_tables(ulong start)
|
|||
acpi_rsdp_addr = (unsigned long)rsdp;
|
||||
debug("ACPI: done\n");
|
||||
|
||||
/* Don't touch ACPI hardware on HW reduced platforms */
|
||||
if (fadt->flags & ACPI_FADT_HW_REDUCED_ACPI)
|
||||
return current;
|
||||
|
||||
/*
|
||||
* Other than waiting for OSPM to request us to switch to ACPI mode,
|
||||
* do it by ourselves, since SMI will not be triggered.
|
||||
*/
|
||||
enter_acpi_mode(fadt->pm1a_cnt_blk);
|
||||
|
||||
return current;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue