diff options
Diffstat (limited to 'arch/x86/kernel/apm_32.c')
-rw-r--r-- | arch/x86/kernel/apm_32.c | 12 |
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 | ||
977 | static void apm_power_off(void) | 977 | static 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 | } |