From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755433AbbIAIyc (ORCPT ); Tue, 1 Sep 2015 04:54:32 -0400 Received: from mail-wi0-f182.google.com ([209.85.212.182]:35178 "EHLO mail-wi0-f182.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755241AbbIAIy3 (ORCPT ); Tue, 1 Sep 2015 04:54:29 -0400 Date: Tue, 1 Sep 2015 09:54:26 +0100 From: Matt Fleming To: Geert Uytterhoeven Cc: Peter Jones , linux-efi@vger.kernel.org, "linux-kernel@vger.kernel.org" , Linux Fbdev development list , Matt Fleming , Pete Hawkins , Matthew Garrett , Chad Page Subject: Re: [PATCH] efifb: Add support for 64-bit frame buffer addresses Message-ID: <20150901085426.GC2823@codeblueprint.co.uk> References: <1440763939-17027-1-git-send-email-matt@codeblueprint.co.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 31 Aug, at 10:24:31PM, Geert Uytterhoeven wrote: > On Fri, Aug 28, 2015 at 2:12 PM, Matt Fleming wrote: > > --- 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