From: H. Peter Anvin Date: Mon, 23 Jul 2007 22:37:14 +0000 (-0700) Subject: [x86 setup] APM: BX should be zero when disconnecting X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=1a13286b104faeeb4f4bc3bfbf4d4fcdcd2569ed;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git [x86 setup] APM: BX should be zero when disconnecting For APM calls, BX contains the device index, which is zero for the system BIOS. Disconnect requres BX = 0. Signed-off-by: H. Peter Anvin --- diff --git a/arch/i386/boot/apm.c b/arch/i386/boot/apm.c index 8be3f5686af6..eab50c55a3a5 100644 --- a/arch/i386/boot/apm.c +++ b/arch/i386/boot/apm.c @@ -45,9 +45,10 @@ int query_apm_bios(void) /* Disconnect first, just in case */ ax = 0x5304; + bx = 0; asm volatile("pushl %%ebp ; int $0x15 ; popl %%ebp" - : "+a" (ax) - : : "ebx", "ecx", "edx", "esi", "edi"); + : "+a" (ax), "+b" (bx) + : : "ecx", "edx", "esi", "edi"); /* Paranoia */ ebx = esi = 0;