mirror of
https://git.savannah.gnu.org/git/grub.git
synced 2026-10-22 15:22:39 +00:00
Preferred resolution detection for VBE.
* 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_edid_checksum): Likewise. (grub_vbe_get_preferred_mode): Likewise. Try EDID followed by the Flat Panel extension, in line with the X.org VESA driver. (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. * include/grub/i386/pc/vbe.h (struct grub_vbe_flat_panel_info): New structure. (struct grub_vbe_edid_info): Likewise. (grub_vbe_bios_get_flat_panel_info): Add prototype. (grub_vbe_bios_get_ddc_capabilities): Likewise. (grub_vbe_bios_read_edid): Likewise. * util/grub.d/00_header.in (GRUB_GFXMODE): Default to "auto". This is more appropriate on a wider range of platforms than 640x480.
This commit is contained in:
1 parent
159b4a8bb7
commit
e03f549b3e
4 files changed
+256
-5
No files matched your search
@@ -0,0 +1,25 @@
|
||||
2010-12-14 Colin Watson <cjwatson@ubuntu.com>
|
||||
|
||||
Preferred resolution detection for VBE.
|
||||
|
||||
* 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_edid_checksum): Likewise.
|
||||
(grub_vbe_get_preferred_mode): Likewise. Try EDID followed by the
|
||||
Flat Panel extension, in line with the X.org VESA driver.
|
||||
(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.
|
||||
* include/grub/i386/pc/vbe.h (struct grub_vbe_flat_panel_info): New
|
||||
structure.
|
||||
(struct grub_vbe_edid_info): Likewise.
|
||||
(grub_vbe_bios_get_flat_panel_info): Add prototype.
|
||||
(grub_vbe_bios_get_ddc_capabilities): Likewise.
|
||||
(grub_vbe_bios_read_edid): Likewise.
|
||||
|
||||
* util/grub.d/00_header.in (GRUB_GFXMODE): Default to "auto". This
|
||||
is more appropriate on a wider range of platforms than 640x480.
|
||||
Reference in new issue
Block a user