From 7a6bf9f220292246d5ed80ef0fefefefe780faa8 Mon Sep 17 00:00:00 2001 From: robertmh Date: Fri, 3 Apr 2009 20:03:39 +0000 Subject: [PATCH] 2009-04-03 Robert Millan * loader/i386/linux.c (grub_linux_setup_video): Fill `params->{red,green,blue,reserved}_{mask_size,field_pos}' with values from `mode info' structure instead of hardcoded values. --- ChangeLog | 7 +++++++ loader/i386/linux.c | 16 ++++++++-------- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 853274146..bb3b98a64 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2009-04-03 Robert Millan + + * loader/i386/linux.c (grub_linux_setup_video): Fill + `params->{red,green,blue,reserved}_{mask_size,field_pos}' with + values from `mode info' structure instead of hardcoded + values. + 2009-04-01 Pavel Roskin * Makefile.in: Remove all references to MODULE_LDFLAGS, it's diff --git a/loader/i386/linux.c b/loader/i386/linux.c index 33b6d8659..a2fff83fa 100644 --- a/loader/i386/linux.c +++ b/loader/i386/linux.c @@ -304,14 +304,14 @@ grub_linux_setup_video (struct linux_kernel_params *params) params->lfb_base = (void *) render_target->data; params->lfb_size = (params->lfb_line_len * params->lfb_height + 65535) >> 16; - params->red_mask_size = 8; - params->red_field_pos = 16; - params->green_mask_size = 8; - params->green_field_pos = 8; - params->blue_mask_size = 8; - params->blue_field_pos = 0; - params->reserved_mask_size = 8; - params->reserved_field_pos = 24; + params->red_mask_size = mode_info.red_mask_size; + params->red_field_pos = mode_info.red_field_pos; + params->green_mask_size = mode_info.green_mask_size; + params->green_field_pos = mode_info.green_field_pos; + params->blue_mask_size = mode_info.blue_mask_size; + params->blue_field_pos = mode_info.blue_field_pos; + params->reserved_mask_size = mode_info.reserved_mask_size; + params->reserved_field_pos = mode_info.reserved_field_pos; return 0; }