[coreboot] [FILO] r138 - trunk/filo/i386
repository service
svn at coreboot.org
Tue Aug 31 22:26:34 CEST 2010
Author: oxygene
Date: Tue Aug 31 22:26:34 2010
New Revision: 138
URL: http://tracker.coreboot.org/trac/filo/changeset/138
Log:
Fix display of converted memory map entries
Convert address of framebuffer info array to virtual before using it
Modified:
trunk/filo/i386/linux_load.c
Modified: trunk/filo/i386/linux_load.c
==============================================================================
--- trunk/filo/i386/linux_load.c Tue Aug 24 13:36:51 2010 (r137)
+++ trunk/filo/i386/linux_load.c Tue Aug 31 22:26:34 2010 (r138)
@@ -277,7 +277,7 @@
linux_map->addr = filo_map->base;
linux_map->size = filo_map->size;
linux_map->type = filo_map->type;
- debug("%016Lx - %016Lx (%d)\n", linux_map->addr,
+ debug("%016llx - %016llx (%d)\n", linux_map->addr,
linux_map->addr + linux_map->size,
linux_map->type);
params->e820_map_nr = i + 1;
@@ -311,22 +311,25 @@
if (!lib_sysinfo.framebuffer)
return;
- params->lfb_width = lib_sysinfo.framebuffer->x_resolution;
- params->lfb_height = lib_sysinfo.framebuffer->y_resolution;
- params->lfb_depth = lib_sysinfo.framebuffer->bits_per_pixel;
- params->lfb_linelength = lib_sysinfo.framebuffer->bytes_per_line;
- params->lfb_base = lib_sysinfo.framebuffer->physical_address;
+ struct cb_framebuffer *fb = phys_to_virt(lib_sysinfo.framebuffer);
+
+ params->lfb_width = fb->x_resolution;
+ params->lfb_height = fb->y_resolution;
+ params->lfb_depth = fb->bits_per_pixel;
+ params->lfb_linelength = fb->bytes_per_line;
+ params->lfb_base = fb->physical_address;
+
// prolly not enough for the boot splash?!
params->lfb_size =
(params->lfb_linelength * params->lfb_height + 65535) >> 16;
- params->red_size = lib_sysinfo.framebuffer->red_mask_size;
- params->red_pos = lib_sysinfo.framebuffer->red_mask_pos;
- params->green_size = lib_sysinfo.framebuffer->green_mask_size;
- params->green_pos = lib_sysinfo.framebuffer->green_mask_pos;
- params->blue_size = lib_sysinfo.framebuffer->blue_mask_size;
- params->blue_pos = lib_sysinfo.framebuffer->blue_mask_pos;
- params->rsvd_size = lib_sysinfo.framebuffer->reserved_mask_size;
- params->rsvd_pos = lib_sysinfo.framebuffer->reserved_mask_pos;
+ params->red_size = fb->red_mask_size;
+ params->red_pos = fb->red_mask_pos;
+ params->green_size = fb->green_mask_size;
+ params->green_pos = fb->green_mask_pos;
+ params->blue_size = fb->blue_mask_size;
+ params->blue_pos = fb->blue_mask_pos;
+ params->rsvd_size = fb->reserved_mask_size;
+ params->rsvd_pos = fb->reserved_mask_pos;
#endif
}
More information about the coreboot
mailing list