diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-08-24 16:10:56 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-08-24 16:10:56 -0700 |
commit | 37a3cc99d5048df62bb201c0b45a51ba94497e45 (patch) | |
tree | c129d5d04fc4eab5c8bc39fbf2203121be4d6d52 /arch/i386/boot/video-vga.c | |
parent | 6e106b0d97e79f1abb60cc49a53af760950c3384 (diff) | |
parent | 71351b98b9be6a867aa00276d67716c0728cfff7 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup:
[x86 setup] Make sure AH=00h when setting a video mode
[x86 setup] Volatilize asm() statements
Diffstat (limited to 'arch/i386/boot/video-vga.c')
-rw-r--r-- | arch/i386/boot/video-vga.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/arch/i386/boot/video-vga.c b/arch/i386/boot/video-vga.c index 700d09a9c9b..aef02f9ec0c 100644 --- a/arch/i386/boot/video-vga.c +++ b/arch/i386/boot/video-vga.c @@ -47,16 +47,16 @@ static u8 vga_set_basic_mode(void) #ifdef CONFIG_VIDEO_400_HACK if (adapter >= ADAPTER_VGA) { - asm(INT10 - : : "a" (0x1202), "b" (0x0030) - : "ecx", "edx", "esi", "edi"); + asm volatile(INT10 + : : "a" (0x1202), "b" (0x0030) + : "ecx", "edx", "esi", "edi"); } #endif ax = 0x0f00; - asm(INT10 - : "+a" (ax) - : : "ebx", "ecx", "edx", "esi", "edi"); + asm volatile(INT10 + : "+a" (ax) + : : "ebx", "ecx", "edx", "esi", "edi"); mode = (u8)ax; @@ -73,9 +73,10 @@ static u8 vga_set_basic_mode(void) mode = 3; /* Set the mode */ + ax = mode; asm volatile(INT10 - : : "a" (mode) - : "ebx", "ecx", "edx", "esi", "edi"); + : "+a" (ax) + : : "ebx", "ecx", "edx", "esi", "edi"); do_restore = 1; return mode; } |