aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/apm_32.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kernel/apm_32.c')
-rw-r--r--arch/x86/kernel/apm_32.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/arch/x86/kernel/apm_32.c b/arch/x86/kernel/apm_32.c
index 15f47f741983..9079926a5b18 100644
--- a/arch/x86/kernel/apm_32.c
+++ b/arch/x86/kernel/apm_32.c
@@ -976,20 +976,10 @@ recalc:
976 976
977static void apm_power_off(void) 977static void apm_power_off(void)
978{ 978{
979 unsigned char po_bios_call[] = {
980 0xb8, 0x00, 0x10, /* movw $0x1000,ax */
981 0x8e, 0xd0, /* movw ax,ss */
982 0xbc, 0x00, 0xf0, /* movw $0xf000,sp */
983 0xb8, 0x07, 0x53, /* movw $0x5307,ax */
984 0xbb, 0x01, 0x00, /* movw $0x0001,bx */
985 0xb9, 0x03, 0x00, /* movw $0x0003,cx */
986 0xcd, 0x15 /* int $0x15 */
987 };
988
989 /* Some bioses don't like being called from CPU != 0 */ 979 /* Some bioses don't like being called from CPU != 0 */
990 if (apm_info.realmode_power_off) { 980 if (apm_info.realmode_power_off) {
991 set_cpus_allowed_ptr(current, cpumask_of(0)); 981 set_cpus_allowed_ptr(current, cpumask_of(0));
992 machine_real_restart(po_bios_call, sizeof(po_bios_call)); 982 machine_real_restart(MRR_APM);
993 } else { 983 } else {
994 (void)set_system_power_state(APM_STATE_OFF); 984 (void)set_system_power_state(APM_STATE_OFF);
995 } 985 }