]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
Fix address size in ofwfb on sparc64 (based on info by bvk)
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Sun, 14 Mar 2010 15:32:50 +0000 (16:32 +0100)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Sun, 14 Mar 2010 15:32:50 +0000 (16:32 +0100)
video/ieee1275.c

index 99c54f5edd91d26e8430999aecf011f381f62851..5c6bc1594e9481f546b5c31872a95c26eeaa39ae 100644 (file)
@@ -124,8 +124,7 @@ grub_video_ieee1275_setup (unsigned int width, unsigned int height,
                           unsigned int mode_type __attribute__ ((unused)),
                           unsigned int mode_mask __attribute__ ((unused)))
 {
-  grub_uint32_t current_width, current_height;
-  grub_addr_t address;
+  grub_uint32_t current_width, current_height, address;
   grub_err_t err;
   grub_ieee1275_phandle_t dev;
 
@@ -167,7 +166,8 @@ grub_video_ieee1275_setup (unsigned int width, unsigned int height,
                                          sizeof (address), 0))
     return grub_error (GRUB_ERR_IO, "Couldn't retrieve display address.");
 
-  framebuffer.ptr = (void *) address;
+  /* For some reason sparc64 uses 32-bit pointer too.  */
+  framebuffer.ptr = (void *) (grub_addr_t) address;
 
   grub_video_ieee1275_set_palette (0, GRUB_VIDEO_FBSTD_NUMCOLORS,
                                   grub_video_fbstd_colors);