diff options
author | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2014-12-26 13:29:09 +0200 |
---|---|---|
committer | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2014-12-28 19:57:06 +0100 |
commit | 134f504cb79dd132d765dc8e4c074312199326cc (patch) | |
tree | ef7c1a7be8143caafb32c49f649e6a79b8106bde /src | |
parent | c7c02673e45a1c35ee020049c3dcf6da7e7ed1f0 (diff) | |
download | coreboot-134f504cb79dd132d765dc8e4c074312199326cc.tar.xz |
RELOCATABLE_RAMSTAGE: Fix weak symbols in ACPI
After relocation the weak symbols are no longer NULL.
Always have empty stub function defined.
Change-Id: I6cb959c1fa10b4b63018e400636842e2a15d6e81
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: http://review.coreboot.org/7955
Tested-by: build bot (Jenkins)
Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/arch/x86/boot/acpi.c | 16 | ||||
-rw-r--r-- | src/arch/x86/include/arch/acpi.h | 4 |
2 files changed, 14 insertions, 6 deletions
diff --git a/src/arch/x86/boot/acpi.c b/src/arch/x86/boot/acpi.c index 5abc17849b..61f09546af 100644 --- a/src/arch/x86/boot/acpi.c +++ b/src/arch/x86/boot/acpi.c @@ -830,6 +830,10 @@ unsigned long write_acpi_tables(unsigned long start) #endif #if CONFIG_HAVE_ACPI_RESUME +void __attribute__((weak)) mainboard_suspend_resume(void) +{ +} + void acpi_resume(void *wake_vec) { #if CONFIG_HAVE_SMI_HANDLER @@ -844,8 +848,7 @@ void acpi_resume(void *wake_vec) #endif /* Call mainboard resume handler first, if defined. */ - if (mainboard_suspend_resume) - mainboard_suspend_resume(); + mainboard_suspend_resume(); post_code(POST_OS_RESUME); acpi_jump_to_wakeup(wake_vec); @@ -854,13 +857,18 @@ void acpi_resume(void *wake_vec) /* This is to be filled by SB code - startup value what was found. */ u8 acpi_slp_type = 0; +int __attribute__((weak)) acpi_get_sleep_type(void) +{ + return 0; +} + static void acpi_handoff_wakeup(void) { static int once = 0; if (once) return; - if (acpi_get_sleep_type) - acpi_slp_type = acpi_get_sleep_type(); + + acpi_slp_type = acpi_get_sleep_type(); once = 1; } diff --git a/src/arch/x86/include/arch/acpi.h b/src/arch/x86/include/arch/acpi.h index 54217b3143..502c8264d8 100644 --- a/src/arch/x86/include/arch/acpi.h +++ b/src/arch/x86/include/arch/acpi.h @@ -570,12 +570,12 @@ int acpi_is_wakeup_early(void); void acpi_fail_wakeup(void); void acpi_resume(void *wake_vec); void acpi_prepare_resume_backup(void); -void __attribute__((weak)) mainboard_suspend_resume(void); +void mainboard_suspend_resume(void); void *acpi_find_wakeup_vector(void); void *acpi_get_wakeup_rsdp(void); void acpi_jump_to_wakeup(void *wakeup_addr); -int __attribute__((weak)) acpi_get_sleep_type(void); +int acpi_get_sleep_type(void); #endif /* IS_ENABLED(CONFIG_HAVE_ACPI_RESUME) */ /* cpu/intel/speedstep/acpi.c */ |