Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753929AbbGXO5K (ORCPT ); Fri, 24 Jul 2015 10:57:10 -0400 Received: from foss.arm.com ([217.140.101.70]:45312 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750976AbbGXO5I (ORCPT ); Fri, 24 Jul 2015 10:57:08 -0400 Date: Fri, 24 Jul 2015 15:57:08 +0100 From: Will Deacon To: "Jonathan (Zhixiong) Zhang" Cc: Catalin Marinas , "fu.wei@linaro.org" , "al.stone@linaro.org" , "bp @ alien8 . de Matt Fleming" , "rjw@rjwysocki.net" , "linux-kernel@vger.kernel.org" , "linaro-acpi@lists.linaro.org" Subject: Re: [PATCH V7 4/5] arm64: apei: implement arch_apei_get_mem_attributes() Message-ID: <20150724145707.GD12569@arm.com> References: <1437515960-16812-1-git-send-email-zjzhang@codeaurora.org> <1437515960-16812-5-git-send-email-zjzhang@codeaurora.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1437515960-16812-5-git-send-email-zjzhang@codeaurora.org> Thread-Topic: [PATCH V7 4/5] arm64: apei: implement arch_apei_get_mem_attributes() Accept-Language: en-GB, en-US Content-Language: en-US acceptlanguage: en-GB, en-US User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1663 Lines: 46 On Tue, Jul 21, 2015 at 10:59:19PM +0100, Jonathan (Zhixiong) Zhang wrote: > From: "Jonathan (Zhixiong) Zhang" > > If the physical address has memory attributes defined by EFI > memmap as EFI_MEMORY_UC, the page protection type is > PROT_DEVICE_nGnRE. Otherwise, the page protection type is > PAGE_KERNEL. > > Signed-off-by: Jonathan (Zhixiong) Zhang > --- > This patch applies cleanly to efi-next-14364 of efi/next and > arm64-upstream-13521 of arm64/master, but needed slight change > to apply to next-20150720 of linux-next/master and > pm+acpi-4.2-rc3 of linux-pm/master. The later two branches > has newer arch/arm64/include/asm/acpi.h with following patch: > b6cfb277378e ACPI / ARM64: add BAD_MADT_GICC_ENTRY() macro > --- > arch/arm64/include/asm/acpi.h | 26 ++++++++++++++++++++++++++ > 1 file changed, 26 insertions(+) [...] > diff --git a/arch/arm64/include/asm/acpi.h b/arch/arm64/include/asm/acpi.h > +static inline pgprot_t arch_apei_get_mem_attribute(phys_addr_t addr) > +{ > + pgprot_t prot; > + > + prot = efi_mem_attributes(addr); > + if (prot & EFI_MEMORY_UC) > + return PROT_DEVICE_nGnRnE; > + if (prot & EFI_MEMORY_WC) > + return PROT_NORMAL_NC; Can we not use pgprot_noncached and pgprot_writecombine for these two? > + if (prot & EFI_MEMORY_WT) > + return PROT_NORMAL_WT; Then you could add pgprot_writethrough for this guy. Will -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/