This iRAM APM area is needed for I3C access to PMIC via APM block. Without this mapping any access to APM iRAM leads to "Synchronous Abort" exception.
Signed-off-by: Sam Protsenko <semen.protse...@linaro.org> --- arch/arm/mach-exynos/mmu-arm64.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/arch/arm/mach-exynos/mmu-arm64.c b/arch/arm/mach-exynos/mmu-arm64.c index 30e522804fbf..4c154950f73b 100644 --- a/arch/arm/mach-exynos/mmu-arm64.c +++ b/arch/arm/mach-exynos/mmu-arm64.c @@ -101,6 +101,14 @@ struct mm_region *mem_map = exynos7880_mem_map; static struct mm_region exynos850_mem_map[] = { { + /* iRAM */ + .virt = 0x02000000UL, + .phys = 0x02000000UL, + .size = SZ_2M, + .attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRE) | + PTE_BLOCK_NON_SHARE | + PTE_BLOCK_PXN | PTE_BLOCK_UXN + }, { /* Peripheral block */ .virt = 0x10000000UL, .phys = 0x10000000UL, -- 2.39.2