This allows it to be different for arm64, even with setup.h
shared.

Signed-off-by: Andrew Jones <[email protected]>
---
 lib/arm/asm/mmu.h           | 2 +-
 lib/arm/asm/page.h          | 5 ++---
 lib/arm/asm/pgtable-hwdef.h | 6 ++++++
 lib/arm/asm/setup.h         | 6 ++----
 lib/arm/mmu.c               | 1 -
 5 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/lib/arm/asm/mmu.h b/lib/arm/asm/mmu.h
index 1117aeaf06a57..8090a1b554820 100644
--- a/lib/arm/asm/mmu.h
+++ b/lib/arm/asm/mmu.h
@@ -5,7 +5,7 @@
  *
  * This work is licensed under the terms of the GNU LGPL, version 2.
  */
-#include <asm/page.h>
+#include <asm/setup.h>
 #include <asm/barrier.h>
 #include <alloc.h>
 
diff --git a/lib/arm/asm/page.h b/lib/arm/asm/page.h
index 304c80b9ddfd7..039e2ddfb8e0f 100644
--- a/lib/arm/asm/page.h
+++ b/lib/arm/asm/page.h
@@ -16,7 +16,7 @@
 
 #define PAGE_ALIGN(addr)       ALIGN(addr, PAGE_SIZE)
 
-#include <asm/setup.h>
+#include <alloc.h>
 
 typedef u64 pteval_t;
 typedef u64 pmdval_t;
@@ -51,6 +51,5 @@ typedef struct { pgd_t pgd; } pud_t;
 #define virt_to_pfn(kaddr)     (__pa(kaddr) >> PAGE_SHIFT)
 #define pfn_to_virt(pfn)       __va((pfn) << PAGE_SHIFT)
 
-#endif /* __ASSEMBLY__ */
-
+#endif /* !__ASSEMBLY__ */
 #endif /* _ASMARM_PAGE_H_ */
diff --git a/lib/arm/asm/pgtable-hwdef.h b/lib/arm/asm/pgtable-hwdef.h
index a2564aaca05a3..b6850f64b0f52 100644
--- a/lib/arm/asm/pgtable-hwdef.h
+++ b/lib/arm/asm/pgtable-hwdef.h
@@ -62,4 +62,10 @@
 #define PTE_EXT_NG             (_AT(pteval_t, 1) << 11)        /* nG */
 #define PTE_EXT_XN             (_AT(pteval_t, 1) << 54)        /* XN */
 
+/*
+ * 40-bit physical address supported.
+ */
+#define PHYS_MASK_SHIFT                (40)
+#define PHYS_MASK              ((_AC(1, ULL) << PHYS_MASK_SHIFT) - 1)
+
 #endif /* _ASMARM_PGTABLE_HWDEF_H_ */
diff --git a/lib/arm/asm/setup.h b/lib/arm/asm/setup.h
index 3ef3b2c99a9de..450501cc6e8e3 100644
--- a/lib/arm/asm/setup.h
+++ b/lib/arm/asm/setup.h
@@ -6,7 +6,8 @@
  * This work is licensed under the terms of the GNU LGPL, version 2.
  */
 #include <libcflat.h>
-#include <alloc.h>
+#include <asm/page.h>
+#include <asm/pgtable-hwdef.h>
 
 #define NR_CPUS                        8
 extern u32 cpus[NR_CPUS];
@@ -16,9 +17,6 @@ extern phys_addr_t __phys_offset, __phys_end;
 
 #define PHYS_OFFSET            (__phys_offset)
 #define PHYS_END               (__phys_end)
-#define PHYS_SHIFT             40
-#define PHYS_SIZE              (1ULL << PHYS_SHIFT)
-#define PHYS_MASK              (PHYS_SIZE - 1ULL)
 
 #define L1_CACHE_SHIFT         6
 #define L1_CACHE_BYTES         (1 << L1_CACHE_SHIFT)
diff --git a/lib/arm/mmu.c b/lib/arm/mmu.c
index a42ae84bcec1f..7a975c6708de4 100644
--- a/lib/arm/mmu.c
+++ b/lib/arm/mmu.c
@@ -7,7 +7,6 @@
  */
 #include <asm/setup.h>
 #include <asm/mmu.h>
-#include <asm/pgtable-hwdef.h>
 
 static bool mmu_on;
 static pgd_t idmap[PTRS_PER_PGD] __attribute__((aligned(L1_CACHE_BYTES)));
-- 
1.9.3

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to