To use common MMU code, non-identical mapping needs to be supported. Minior change in the MMU framework is required to support splitting blocks. With these changes, using common code is straight forward. Attention is needed where the tables are for early boot, secure and non-secure ram situations.
York Sun (6): armv8: Move secure_ram variable out of generic global data armv8: Add tlb_allocated to arch global data armv8: mmu: house cleaning armv8: mmu: split block if necessary armv8: mmu: Add support of non-identical mapping armv8: layerscape: Convert to use common MMU framework README | 3 +- arch/arm/cpu/armv8/cache_v8.c | 112 ++++---- arch/arm/cpu/armv8/fsl-layerscape/cpu.c | 365 ++++--------------------- arch/arm/cpu/armv8/s32v234/cpu.c | 12 +- arch/arm/cpu/armv8/zynqmp/cpu.c | 21 +- arch/arm/include/asm/arch-fsl-layerscape/cpu.h | 310 ++++++++++++--------- arch/arm/include/asm/armv8/mmu.h | 5 +- arch/arm/include/asm/global_data.h | 15 + arch/arm/mach-exynos/mmu-arm64.c | 9 +- arch/arm/mach-meson/board.c | 6 +- arch/arm/mach-snapdragon/sysmap-apq8016.c | 6 +- arch/arm/mach-sunxi/board.c | 6 +- arch/arm/mach-tegra/arm64-mmu.c | 6 +- arch/arm/mach-uniphier/arm64/mem_map.c | 6 +- board/armltd/vexpress64/vexpress64.c | 6 +- board/cavium/thunderx/thunderx.c | 9 +- board/freescale/ls1043aqds/ddr.c | 15 +- board/freescale/ls1043ardb/ddr.c | 15 +- board/freescale/ls2080a/ddr.c | 15 +- board/freescale/ls2080aqds/ddr.c | 15 +- board/freescale/ls2080ardb/ddr.c | 15 +- board/hisilicon/hikey/hikey.c | 6 +- board/raspberrypi/rpi/rpi.c | 6 +- cmd/bdinfo.c | 4 +- common/board_f.c | 11 +- include/asm-generic/global_data.h | 14 - 26 files changed, 439 insertions(+), 574 deletions(-) -- 2.7.4 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot