Commit 40bce100 authored by Lv Zheng's avatar Lv Zheng Committed by Rafael J. Wysocki

ACPICA: Cleanup asmlinkage for ACPICA APIs.

Add an asmlinkage wrapper around acpi_enter_sleep_state() to prevent
an empty stub from being called by assmebly code for ACPI_REDUCED_HARDWARE
set.

As arch/x86/kernel/acpi/wakeup_xx.S is only compiled when CONFIG_ACPI=y
and there are no users of ACPI_HARDWARE_REDUCED, currently this is in
fact not a real issue, but a cleanup to reduce source code differences
between Linux and ACPICA upstream.

[rjw: Changelog]
Signed-off-by: default avatarLv Zheng <lv.zheng@intel.com>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent efb83542
...@@ -25,6 +25,17 @@ unsigned long acpi_realmode_flags; ...@@ -25,6 +25,17 @@ unsigned long acpi_realmode_flags;
static char temp_stack[4096]; static char temp_stack[4096];
#endif #endif
/**
* x86_acpi_enter_sleep_state - enter sleep state
* @state: Sleep state to enter.
*
* Wrapper around acpi_enter_sleep_state() to be called by assmebly.
*/
acpi_status asmlinkage x86_acpi_enter_sleep_state(u8 state)
{
return acpi_enter_sleep_state(state);
}
/** /**
* x86_acpi_suspend_lowlevel - save kernel state * x86_acpi_suspend_lowlevel - save kernel state
* *
......
...@@ -17,3 +17,5 @@ extern void wakeup_long64(void); ...@@ -17,3 +17,5 @@ extern void wakeup_long64(void);
extern void do_suspend_lowlevel(void); extern void do_suspend_lowlevel(void);
extern int x86_acpi_suspend_lowlevel(void); extern int x86_acpi_suspend_lowlevel(void);
acpi_status asmlinkage x86_acpi_enter_sleep_state(u8 state);
...@@ -73,7 +73,7 @@ ENTRY(do_suspend_lowlevel) ...@@ -73,7 +73,7 @@ ENTRY(do_suspend_lowlevel)
call save_processor_state call save_processor_state
call save_registers call save_registers
pushl $3 pushl $3
call acpi_enter_sleep_state call x86_acpi_enter_sleep_state
addl $4, %esp addl $4, %esp
# In case of S3 failure, we'll emerge here. Jump # In case of S3 failure, we'll emerge here. Jump
......
...@@ -73,7 +73,7 @@ ENTRY(do_suspend_lowlevel) ...@@ -73,7 +73,7 @@ ENTRY(do_suspend_lowlevel)
addq $8, %rsp addq $8, %rsp
movl $3, %edi movl $3, %edi
xorl %eax, %eax xorl %eax, %eax
call acpi_enter_sleep_state call x86_acpi_enter_sleep_state
/* in case something went wrong, restore the machine status and go on */ /* in case something went wrong, restore the machine status and go on */
jmp resume_point jmp resume_point
......
...@@ -167,7 +167,7 @@ ACPI_EXPORT_SYMBOL(acpi_set_firmware_waking_vector64) ...@@ -167,7 +167,7 @@ ACPI_EXPORT_SYMBOL(acpi_set_firmware_waking_vector64)
* THIS FUNCTION MUST BE CALLED WITH INTERRUPTS DISABLED * THIS FUNCTION MUST BE CALLED WITH INTERRUPTS DISABLED
* *
******************************************************************************/ ******************************************************************************/
acpi_status asmlinkage acpi_enter_sleep_state_s4bios(void) acpi_status acpi_enter_sleep_state_s4bios(void)
{ {
u32 in_value; u32 in_value;
acpi_status status; acpi_status status;
...@@ -361,7 +361,7 @@ ACPI_EXPORT_SYMBOL(acpi_enter_sleep_state_prep) ...@@ -361,7 +361,7 @@ ACPI_EXPORT_SYMBOL(acpi_enter_sleep_state_prep)
* THIS FUNCTION MUST BE CALLED WITH INTERRUPTS DISABLED * THIS FUNCTION MUST BE CALLED WITH INTERRUPTS DISABLED
* *
******************************************************************************/ ******************************************************************************/
acpi_status asmlinkage acpi_enter_sleep_state(u8 sleep_state) acpi_status acpi_enter_sleep_state(u8 sleep_state)
{ {
acpi_status status; acpi_status status;
......
...@@ -510,9 +510,9 @@ acpi_get_sleep_type_data(u8 sleep_state, u8 *slp_typ_a, u8 *slp_typ_b); ...@@ -510,9 +510,9 @@ acpi_get_sleep_type_data(u8 sleep_state, u8 *slp_typ_a, u8 *slp_typ_b);
acpi_status acpi_enter_sleep_state_prep(u8 sleep_state); acpi_status acpi_enter_sleep_state_prep(u8 sleep_state);
acpi_status asmlinkage acpi_enter_sleep_state(u8 sleep_state); acpi_status acpi_enter_sleep_state(u8 sleep_state);
ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status asmlinkage acpi_enter_sleep_state_s4bios(void)) ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_enter_sleep_state_s4bios(void))
acpi_status acpi_leave_sleep_state_prep(u8 sleep_state); acpi_status acpi_leave_sleep_state_prep(u8 sleep_state);
......
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