Re: [PATCH] efifb: Add support for 64-bit frame buffer addresses

From
Matt Fleming <hidden>
Date
2015-09-01 08:54:32
Also in
linux-efi, lkml
Reply to
Geert Uytterhoeven, 2015-08-31
On Mon, 31 Aug, at 10:24:31PM, Geert Uytterhoeven wrote:
On Fri, Aug 28, 2015 at 2:12 PM, Matt Fleming [off-list ref] wrote:
quoted
--- a/arch/x86/boot/compressed/eboot.c
+++ b/arch/x86/boot/compressed/eboot.c
@@ -624,7 +624,7 @@ setup_pixel_info(struct screen_info *si, u32 pixels_per_scan_line,
 static efi_status_t
 __gop_query32(struct efi_graphics_output_protocol_32 *gop32,
              struct efi_graphics_output_mode_info **info,
-             unsigned long *size, u32 *fb_base)
+             unsigned long *size, u64 *fb_base)
phys_addr_t instead of u64?
I can see why you might think that, but no, phys_addr_t isn't the
correct data type because your kernel config dictates whether that's
u32 or u64.

We're interacting with the firmware here and the frame buffer address
is always u64, for both 32-bit and 64-bit firmware. It's defined that
way in the UEFI spec.

It's better to be explicit about these kinds of things, and use u64.

-- 
Matt Fleming, Intel Open Source Technology Center
Thread (4 messages) 4 messages, 3 authors, last reply 2015-09-01
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help