arm: cache: add support for LPAE for region D$ behavior
authorStefan Agner <stefan.agner@toradex.com>
Mon, 15 Aug 2016 04:33:00 +0000 (21:33 -0700)
committerTom Rini <trini@konsulko.com>
Fri, 26 Aug 2016 21:04:56 +0000 (17:04 -0400)
Add LPAE support for mmu_set_region_dcache_behaviour. The function
is in use in some LPAE capable board such TI DRA7xx or NXP i.MX 7.

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
arch/arm/lib/cache-cp15.c

index 1121dc3..3aabda1 100644 (file)
@@ -61,7 +61,11 @@ __weak void mmu_page_table_flush(unsigned long start, unsigned long stop)
 void mmu_set_region_dcache_behaviour(phys_addr_t start, size_t size,
                                     enum dcache_option option)
 {
+#ifdef CONFIG_ARMV7_LPAE
+       u64 *page_table = (u64 *)gd->arch.tlb_addr;
+#else
        u32 *page_table = (u32 *)gd->arch.tlb_addr;
+#endif
        unsigned long upto, end;
 
        end = ALIGN(start + size, MMU_SECTION_SIZE) >> MMU_SECTION_SHIFT;