From 1a40f80c98da574dab206aefd3fffb4dbbcfbf44 Mon Sep 17 00:00:00 2001 From: Vladimir 'phcoder' Serbinenko Date: Wed, 24 Apr 2013 14:53:00 +0200 Subject: [PATCH] * grub-core/loader/i386/linux.c (grub_linux_boot): Default to gfxpayload=keep if cbfb is active. --- ChangeLog | 5 +++++ grub-core/loader/i386/linux.c | 15 ++++++++++----- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 6d9ffdcc1..58543267b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-04-24 Vladimir Serbinenko + + * grub-core/loader/i386/linux.c (grub_linux_boot): Default to + gfxpayload=keep if cbfb is active. + 2013-04-24 Vladimir Serbinenko * grub-core/disk/ata.c (grub_ata_real_open): Use grub_error properly. diff --git a/grub-core/loader/i386/linux.c b/grub-core/loader/i386/linux.c index db81ca1cc..106496b86 100644 --- a/grub-core/loader/i386/linux.c +++ b/grub-core/loader/i386/linux.c @@ -503,15 +503,20 @@ grub_linux_boot (void) #endif grub_free (tmp); } - else - { + else /* We can't go back to text mode from coreboot fb. */ +#ifdef GRUB_MACHINE_COREBOOT + if (grub_video_get_driver_id () == GRUB_VIDEO_DRIVER_COREBOOT) + err = GRUB_ERR_NONE; + else +#endif + { #if ACCEPTS_PURE_TEXT - err = grub_video_set_mode (DEFAULT_VIDEO_MODE, 0, 0); + err = grub_video_set_mode (DEFAULT_VIDEO_MODE, 0, 0); #else - err = grub_video_set_mode (DEFAULT_VIDEO_MODE, + err = grub_video_set_mode (DEFAULT_VIDEO_MODE, GRUB_VIDEO_MODE_TYPE_PURE_TEXT, 0); #endif - } + } if (err) {