[PATCH RFC 5/6] arm64/xen: implement xen_remap on arm64
From: Stefano Stabellini <hidden>
Date: 2013-05-31 14:50:45
Also in:
lkml, xen-devel
From: Stefano Stabellini <hidden>
Date: 2013-05-31 14:50:45
Also in:
lkml, xen-devel
On Fri, 31 May 2013, Catalin Marinas wrote:
On Fri, May 31, 2013 at 02:21:16PM +0100, Stefano Stabellini wrote:quoted
On Fri, 31 May 2013, Catalin Marinas wrote:quoted
On Thu, May 30, 2013 at 05:18:32PM +0100, Stefano Stabellini wrote:quoted
--- a/arch/arm/include/asm/xen/page.h +++ b/arch/arm/include/asm/xen/page.h@@ -90,6 +90,10 @@ static inline bool set_phys_to_machine(unsigned long pfn, unsigned long mfn) return __set_phys_to_machine(pfn, mfn); } +#ifdef CONFIG_ARM64 +#define xen_remap(cookie, size) __ioremap((cookie), (size), __pgprot(PROT_NORMAL)) +#else #define xen_remap(cookie, size) __arm_ioremap((cookie), (size), MT_MEMORY); +#endifNow I saw the ARM-specific part. Can you not use something like ioremap_cached() which would give normal cacheable memory (at least on ARMv7).No, I cannot because ioremap_cached uses MT_DEVICE_CACHED, while this needs to be MT_MEMORY. It is used for normal memory pages, not device memory.MT_DEVICE_CACHED is Normal memory for ARMv7.
I didn't realize that MT_DEVICE_CACHED and MT_MEMORY end up having the same AttrIndx encoding! In that case yes, I should be able to use it. I take that I should just implement ioremap_cached on arm64 as well?