aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86_64/boot/video.S
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-04-02 11:41:55 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-04-02 11:41:55 -0700
commit9a5ee4cc9ef8de5185114237a81f5f395e21d8fd (patch)
tree378d367ba1d97304051d3be0cec901fe8ab38d60 /arch/x86_64/boot/video.S
parent[PATCH] i386: fix file_read_actor() and pipe_read() for original i386 systems (diff)
parent[PATCH] x86: Don't probe for DDC on VBE1.2 (diff)
downloadlinux-dev-9a5ee4cc9ef8de5185114237a81f5f395e21d8fd.tar.xz
linux-dev-9a5ee4cc9ef8de5185114237a81f5f395e21d8fd.zip
Merge branch 'for-linus' of git://one.firstfloor.org/home/andi/git/linux-2.6
* 'for-linus' of git://one.firstfloor.org/home/andi/git/linux-2.6: [PATCH] x86: Don't probe for DDC on VBE1.2 [PATCH] x86-64: Increase NMI watchdog probing timeout [PATCH] x86-64: Let oprofile reserve MSR on all CPUs [PATCH] x86-64: Disable local APIC timer use on AMD systems with C1E
Diffstat (limited to 'arch/x86_64/boot/video.S')
-rw-r--r--arch/x86_64/boot/video.S14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/x86_64/boot/video.S b/arch/x86_64/boot/video.S
index d6ff88f35135..6090516c9c7f 100644
--- a/arch/x86_64/boot/video.S
+++ b/arch/x86_64/boot/video.S
@@ -571,6 +571,16 @@ setr1: lodsw
jmp _m_s
check_vesa:
+#ifdef CONFIG_FIRMWARE_EDID
+ leaw modelist+1024, %di
+ movw $0x4f00, %ax
+ int $0x10
+ cmpw $0x004f, %ax
+ jnz setbad
+
+ movw 4(%di), %ax
+ movw %ax, vbe_version
+#endif
leaw modelist+1024, %di
subb $VIDEO_FIRST_VESA>>8, %bh
movw %bx, %cx # Get mode information structure
@@ -1945,6 +1955,9 @@ store_edid:
rep
stosl
+ cmpw $0x0200, vbe_version # only do EDID on >= VBE2.0
+ jl no_edid
+
pushw %es # save ES
xorw %di, %di # Report Capability
pushw %di
@@ -1987,6 +2000,7 @@ do_restore: .byte 0 # Screen contents altered during mode change
svga_prefix: .byte VIDEO_FIRST_BIOS>>8 # Default prefix for BIOS modes
graphic_mode: .byte 0 # Graphic mode with a linear frame buffer
dac_size: .byte 6 # DAC bit depth
+vbe_version: .word 0 # VBE bios version
# Status messages
keymsg: .ascii "Press <RETURN> to see video modes available, "