From 41597c79e0c73d3e55ff633bdecd3409f84e59ee Mon Sep 17 00:00:00 2001 From: Anton Burticica Date: Sat, 17 Jan 2026 00:55:29 +0200 Subject: [PATCH] rockchip: rk3576: Add SCMI shared memory region to MMU mapping Add a 64KB memory region mapping at 0x40100000 for SCMI (System Control and Management Interface) communication between U-Boot and the ARM Trusted Firmware. The region is configured with: - MT_NORMAL_NC (Non-cacheable normal memory) to ensure coherent access between the AP and SCP/firmware - PTE_BLOCK_NON_SHARE to match firmware expectations - PXN/UXN to prevent execution from this memory region This shared memory region is used for SCMI message passing on RK3576 platforms that utilize ARM-FF-A or similar firmware interfaces for clock, power domain, and other system control operations. Change-Id: 9d1957c3-d21f-41de-b9b9-acfcffce4d83 batch-02 Signed-off-by: Anton Burticica --- arch/arm/mach-rockchip/rk3576/rk3576.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/arch/arm/mach-rockchip/rk3576/rk3576.c b/arch/arm/mach-rockchip/rk3576/rk3576.c index 1def4e87971..c24b306e8ae 100644 --- a/arch/arm/mach-rockchip/rk3576/rk3576.c +++ b/arch/arm/mach-rockchip/rk3576/rk3576.c @@ -76,6 +76,14 @@ static struct mm_region rk3576_mem_map[] = { .size = 0x400000000UL, .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) | PTE_BLOCK_INNER_SHARE + }, { + /* MSCH_DDR_PORT, shared 64KB for SCMI */ + .virt = 0x40100000UL, + .phys = 0x40100000UL, + .size = 0x00010000UL, + .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL_NC) | + PTE_BLOCK_NON_SHARE | + PTE_BLOCK_PXN | PTE_BLOCK_UXN }, { /* PCIe 0+1 */ .virt = 0x900000000UL,