Add a CONFIG_MTK_MEM_MAP_DDR_BASE_PHY variable to specify the DDR base
physical address for the Mediatek ARMv8 memory map. This will be used
by MT8196 in the future which has a different DDR base address than
other Mediatek SoCs.

Signed-off-by: David Lechner <[email protected]>
---
v2 changes: new patch in v2
---
 arch/arm/mach-mediatek/Kconfig         | 6 ++++++
 arch/arm/mach-mediatek/armv8-mem-map.c | 4 ++--
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-mediatek/Kconfig b/arch/arm/mach-mediatek/Kconfig
index 33717a1864f..d10aedc303b 100644
--- a/arch/arm/mach-mediatek/Kconfig
+++ b/arch/arm/mach-mediatek/Kconfig
@@ -132,6 +132,12 @@ endchoice
 
 if ARM64
 
+config MTK_MEM_MAP_DDR_BASE_PHY
+       hex "DDR physical base address"
+       default 0x40000000
+       help
+               Target-specific DDR physical base address.
+
 config MTK_MEM_MAP_DDR_SIZE
        hex "DDR .size in mem_map"
        default 0x200000000 if TARGET_MT7987 || TARGET_MT7988 || TARGET_MT8188
diff --git a/arch/arm/mach-mediatek/armv8-mem-map.c 
b/arch/arm/mach-mediatek/armv8-mem-map.c
index 3587a2a9dd2..cbaa9b4c267 100644
--- a/arch/arm/mach-mediatek/armv8-mem-map.c
+++ b/arch/arm/mach-mediatek/armv8-mem-map.c
@@ -5,8 +5,8 @@
 static struct mm_region mediatek_mem_map[] = {
        {
                /* DDR */
-               .virt = 0x40000000UL,
-               .phys = 0x40000000UL,
+               .virt = CONFIG_MTK_MEM_MAP_DDR_BASE_PHY,
+               .phys = CONFIG_MTK_MEM_MAP_DDR_BASE_PHY,
                .size = CONFIG_MTK_MEM_MAP_DDR_SIZE,
                .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) | PTE_BLOCK_OUTER_SHARE,
        }, {

-- 
2.43.0

Reply via email to