grub/include/grub/i386
Colin Watson 8fc4fa45c5 Preferred resolution detection for VBE.
* grub-core/video/video.c (grub_video_edid_checksum): New function.
(grub_video_edid_preferred_mode): Likewise.  Try EDID followed by
the Flat Panel extension, in line with the X.org VESA driver.
* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_flat_panel_info):
New function.
(grub_vbe_bios_get_ddc_capabilities): Likewise.
(grub_vbe_bios_read_edid): Likewise.
(grub_vbe_get_preferred_mode): Likewise.
(grub_video_vbe_setup): When the mode is "auto", try to get the
preferred mode from VBE, and use the largest mode that is no larger
than the preferred mode (some BIOSes expose a preferred mode that is
not in their mode list!).  If this fails, fall back to 640x480 as a
safe conservative choice.
(grub_video_vbe_get_edid): New function.
(grub_video_vbe_adapter): Add get_edid.
* include/grub/video.h (struct grub_vbe_edid_info): New structure.
(struct grub_video_adapter): Add get_edid.
(grub_video_edid_checksum): Add prototype.
(grub_video_edid_preferred_mode): Likewise.
* include/grub/i386/pc/vbe.h (struct grub_vbe_flat_panel_info): New
structure.

* grub-core/commands/videoinfo.c (print_edid): New function.
(grub_cmd_videoinfo): Print EDID if available.

* util/grub.d/00_header.in (GRUB_GFXMODE): Default to "auto".  This
is more appropriate on a wider range of platforms than 640x480.
* docs/grub.texi (Simple configuration): Update GRUB_GFXMODE
documentation.
2011-07-21 19:46:44 +01:00
..
coreboot Coreboot video support. 2011-06-27 08:54:55 +02:00
efi Remove loader.h 2010-04-29 13:26:38 +02:00
ieee1275 Reorganise memory map handling 2010-09-04 17:10:10 +02:00
multiboot merge mainline into intwrap 2010-08-29 23:21:21 +02:00
pc Preferred resolution detection for VBE. 2011-07-21 19:46:44 +01:00
qemu Reorganise memory map handling 2010-09-04 17:10:10 +02:00
at_keyboard.h merge mainline into mips 2010-01-10 13:34:48 +01:00
bsd.h openbsd ramdisk support 2010-08-26 02:46:30 +02:00
cmos.h datetime for yeeloong 2009-12-11 22:14:09 +01:00
cpuid.h 2009-10-09 Robert Millan <rmh.grub@aybabtu.com> 2009-10-09 18:23:48 +00:00
efiemu.h remove all trailing whitespace 2009-06-10 21:04:23 +00:00
floppy.h Inline grub_stop_floppy 2010-04-10 19:59:22 +02:00
freebsd_linker.h 2010-01-18 Vladimir Serbinenko <phcoder@gmail.com> 2010-01-18 17:40:23 +01:00
freebsd_reboot.h 2010-01-18 Vladimir Serbinenko <phcoder@gmail.com> 2010-01-18 17:40:23 +01:00
io.h split serial 2009-10-10 20:59:18 +02:00
linux.h Long Linux command line support. 2011-05-18 09:56:33 +02:00
macho.h crashing snow64 2009-09-02 02:52:10 +02:00
memory.h Reorganise memory map handling 2010-09-04 17:10:10 +02:00
multiboot.h merge mainline into newreloc 2010-04-11 22:44:31 +02:00
netbsd_bootinfo.h Eliminate variable-length types in parameters 2010-01-18 23:37:11 +01:00
netbsd_reboot.h 2010-01-18 Vladimir Serbinenko <phcoder@gmail.com> 2010-01-18 17:40:23 +01:00
openbsd_bootarg.h kopenbsd serial support 2010-01-19 14:29:02 +01:00
openbsd_reboot.h 2010-01-18 Vladimir Serbinenko <phcoder@gmail.com> 2010-01-18 17:40:23 +01:00
pci.h Dedicated DMA allocation functions. CS5536 OHCI support. 2010-05-31 13:58:18 +02:00
pit.h 2009-05-03 Vladimir Serbinenko <phcoder@gmail.com> 2009-05-02 23:19:20 +00:00
relocator.h freedos support 2010-12-26 00:38:20 +01:00
setjmp.h 2009-05-16 Bean <bean123ch@gmail.com> 2009-05-16 12:46:24 +00:00
time.h Typo fixes in comments and variable names. 2007-12-30 08:52:06 +00:00
tsc.h 2010-01-03 Robert Millan <rmh.grub@aybabtu.com> 2010-01-03 22:05:07 +00:00
types.h 2007-07-22 Yoshinori K. Okuji <okuji@enbug.org> 2007-07-21 23:32:33 +00:00
vga_common.h simplify setcolor/getcolor 2010-05-08 01:06:22 +02:00
xnu.h merge efigfx into newreloc 2010-01-13 14:12:24 +01:00