From 4dd83942b418b937e3da02746baabf63f37fe682 Mon Sep 17 00:00:00 2001 From: Raul Munoz Date: Mon, 4 Aug 2014 11:28:48 +0200 Subject: fbcon: workaround full screen custom boot logo issue and disable cursor Force round down in division calculating required logo height as preceding code did round up as follows: logo_lines = DIV_ROUND_UP(logo_height, vc->vc_font.height); Which resulted in no boot-logo shown at all due to not enough lines being available. Additionally disable cursor for custom boot logo. --- drivers/video/console/fbcon.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c index 8745637e4b7e..cff5ea5d160f 100644 --- a/drivers/video/console/fbcon.c +++ b/drivers/video/console/fbcon.c @@ -633,6 +633,11 @@ static void fbcon_prepare_logo(struct vc_data *vc, struct fb_info *info, kfree(save); } +#ifdef CONFIG_LOGO_CUSTOM_CLUT224 + /* workaround full screen custom boot logo issue */ + logo_lines = logo_lines - 1; +#endif /* CONFIG_LOGO_CUSTOM_CLUT224 */ + if (logo_lines > vc->vc_bottom) { logo_shown = FBCON_LOGO_CANSHOW; printk(KERN_INFO @@ -1288,6 +1293,11 @@ static void fbcon_cursor(struct vc_data *vc, int mode) int y; int c = scr_readw((u16 *) vc->vc_pos); +#ifdef CONFIG_LOGO_CUSTOM_CLUT224 + /* disable cursor for custom boot logo */ + vc->vc_deccm = 0; +#endif /* CONFIG_LOGO_CUSTOM_CLUT224 */ + if (fbcon_is_inactive(vc, info) || vc->vc_deccm != 1) return; -- cgit v1.2.3