> > Signed-off-by: Jan Beulich <jbeulich@novell.com>
> >
> > arch/i386/boot/video.S | 28 ++++++++++++++++++----------
> > 1 files changed, 18 insertions(+), 10 deletions(-)
> >
> > --- linux-2.6.22-rc5/arch/i386/boot/video.S 2007-04-26 05:08:32.000000000 +0200
> > +++ 2.6.22-rc5-edid-no-vesa-mode/arch/i386/boot/video.S 2007-06-19 14:34:50.000000000 +0200
> > @@ -96,6 +96,7 @@
> > #define PARAM_LFB_PAGES 0x32
> > #define PARAM_VESA_ATTRIB 0x34
> > #define PARAM_CAPABILITIES 0x36
> > +#define PARAM_EDID_INFO 0x140
> >
> > /* Define DO_STORE according to CONFIG_VIDEO_RETAIN */
> > #ifdef CONFIG_VIDEO_RETAIN
> > @@ -132,8 +133,8 @@ vid1:
> > #ifdef CONFIG_VIDEO_RETAIN
> > call restore_screen # Restore screen contents
> > #endif /* CONFIG_VIDEO_RETAIN */
> > - call store_edid
> > #endif /* CONFIG_VIDEO_SELECT */
> > + call store_edid
> > call mode_params # Store mode parameters
> > popw %ds # Restore original DS
> > ret
> > @@ -571,16 +572,12 @@ setr1: lodsw
> > jmp _m_s
> >
> > check_vesa:
> > -#ifdef CONFIG_FIRMWARE_EDID
> > leaw modelist+1024, %di
> > movw __PLACEHOLDER__1_x4f00, %ax
> > int __PLACEHOLDER__1_x10
> > cmpw __PLACEHOLDER__1_x004f, %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
> > @@ -1935,6 +1932,7 @@ skip10: movb %ah, %al
> > popw %cx
> > popw %ax
> > ret
> > +#endif /* CONFIG_VIDEO_SELECT */
> >
> > store_edid:
> > #ifdef CONFIG_FIRMWARE_EDID
> > @@ -1945,18 +1943,28 @@ store_edid:
> > pushw %dx
> > pushw %di
> >
> > + pushw %ds
> > + popw %es
> > + leaw modelist, %di
> > + movw __PLACEHOLDER__1_x4f00, %ax
> > + int __PLACEHOLDER__1_x10
> > + cmpw __PLACEHOLDER__1_x004f, %ax
> > + setne %dl
> > + cmpw __PLACEHOLDER__1_x0200, 4(%di) # only do EDID on >= VBE2.0
> > + adc %dl, %dl
> > +
> > pushw %fs
> > popw %es
> >
> > movl __PLACEHOLDER__1_x13131313, %eax # memset block with 0x13
> > movw , %cx
> > - movw __PLACEHOLDER__1_x140, %di
> > + movw $PARAM_EDID_INFO, %di
> > cld
> > rep
> > stosl
> >
> > - cmpw __PLACEHOLDER__1_x0200, vbe_version # only do EDID on >= VBE2.0
> > - jl no_edid
> > + testb %dl, %dl
> > + jnz no_edid
> >
> > pushw %es # save ES
> > xorw %di, %di # Report Capability
> > @@ -1978,7 +1986,7 @@ store_edid:
> > movw __PLACEHOLDER__1_x01, %bx
> > movw __PLACEHOLDER__1_x00, %cx
> > movw __PLACEHOLDER__1_x00, %dx
> > - movw __PLACEHOLDER__1_x140, %di
> > + movw $PARAM_EDID_INFO, %di
> > int __PLACEHOLDER__1_x10
> >
> > no_edid:
> > @@ -1991,6 +1999,7 @@ no_edid:
> > #endif
> > ret
> >
> > +#ifdef CONFIG_VIDEO_SELECT
> > # VIDEO_SELECT-only variables
> > mt_end: .word 0 # End of video mode table if built
> > edit_buf: .space 6 # Line editor buffer
> > @@ -2000,7 +2009,6 @@ do_restore: .byte 0 # Screen contents al
> > 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, "
> >
> >
> >
> > -
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to
majordomo@vger.kernel.org
> > More majordomo info at
http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at
http://www.tux.org/lkml/
> >