From b48532c6941cde0fdf6b3530a87be3215749a65b Mon Sep 17 00:00:00 2001 From: Yidi Lin Date: Fri, 3 Oct 2025 13:57:21 +0800 Subject: [PATCH] soc/mediatek: Refactor MMU configuration for DMA region This patch refactors the MMU configuration for the DMA region by moving the logic from mmu_cmops.c to the common/mmu_operations.c. This centralization simplifies the code and removes duplication. The following changes are included: - Deleted src/soc/mediatek/common/mmu_cmops.c - Moved DMA region configuration to mtk_mmu_after_dram - Updated Makefiles to remove references to the deleted file BRANCH=none BUG=none TEST=emerge-kukui coreboot -j && emerge-elm coreboot -j && \ emerge-rauru coreboot -j Change-Id: I06289afa74248d55fc1eabeef2f6591bc805a8cf Signed-off-by: Yidi Lin Reviewed-on: https://review.coreboot.org/c/coreboot/+/89411 Reviewed-by: Yu-Ping Wu Tested-by: build bot (Jenkins) --- src/soc/mediatek/common/mmu_cmops.c | 11 ----------- src/soc/mediatek/common/mmu_operations.c | 2 ++ src/soc/mediatek/mt8173/mmu_operations.c | 5 ----- src/soc/mediatek/mt8186/Makefile.mk | 4 ++-- src/soc/mediatek/mt8188/Makefile.mk | 4 ++-- src/soc/mediatek/mt8189/Makefile.mk | 4 ++-- src/soc/mediatek/mt8192/Makefile.mk | 4 ++-- src/soc/mediatek/mt8195/Makefile.mk | 4 ++-- src/soc/mediatek/mt8196/Makefile.mk | 4 ++-- 9 files changed, 14 insertions(+), 28 deletions(-) delete mode 100644 src/soc/mediatek/common/mmu_cmops.c diff --git a/src/soc/mediatek/common/mmu_cmops.c b/src/soc/mediatek/common/mmu_cmops.c deleted file mode 100644 index e102569745..0000000000 --- a/src/soc/mediatek/common/mmu_cmops.c +++ /dev/null @@ -1,11 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0-only */ - -#include -#include - -/* mtk_soc_after_dram is called in romstage */ -void mtk_soc_after_dram(void) -{ - mmu_config_range(_dram_dma, REGION_SIZE(dram_dma), - NONSECURE_UNCACHED_MEM); -} diff --git a/src/soc/mediatek/common/mmu_operations.c b/src/soc/mediatek/common/mmu_operations.c index 5471af27e9..1bbe4dc319 100644 --- a/src/soc/mediatek/common/mmu_operations.c +++ b/src/soc/mediatek/common/mmu_operations.c @@ -49,6 +49,8 @@ void mtk_mmu_after_dram(void) /* Map DRAM as cached now that it's up and running */ mmu_config_range(_dram, (uintptr_t)sdram_size(), NONSECURE_CACHED_MEM); + mmu_config_range(_dram_dma, REGION_SIZE(dram_dma), NONSECURE_UNCACHED_MEM); + mtk_soc_after_dram(); } diff --git a/src/soc/mediatek/mt8173/mmu_operations.c b/src/soc/mediatek/mt8173/mmu_operations.c index 44e3ddf24e..7c03b1887c 100644 --- a/src/soc/mediatek/mt8173/mmu_operations.c +++ b/src/soc/mediatek/mt8173/mmu_operations.c @@ -1,17 +1,12 @@ /* SPDX-License-Identifier: GPL-2.0-only */ #include -#include -#include -#include #include #include #include void mtk_soc_after_dram(void) { - mmu_config_range(_dram_dma, REGION_SIZE(dram_dma), - NONSECURE_UNCACHED_MEM); mtk_mmu_disable_l2c_sram(); } diff --git a/src/soc/mediatek/mt8186/Makefile.mk b/src/soc/mediatek/mt8186/Makefile.mk index e3592fc418..080cc1337f 100644 --- a/src/soc/mediatek/mt8186/Makefile.mk +++ b/src/soc/mediatek/mt8186/Makefile.mk @@ -26,7 +26,7 @@ romstage-y += ../common/emi.c romstage-y += ../common/l2c_ops.c romstage-y += ../common/memory.c romstage-y += ../common/memory_test.c -romstage-y += ../common/mmu_operations.c ../common/mmu_cmops.c +romstage-y += ../common/mmu_operations.c romstage-y += ../common/mt6315.c mt6315.c romstage-y += ../common/pmic_wrap.c pmic_wrap.c pmif.c mt6366.c romstage-y += ../common/pmif.c ../common/pmif_clk.c ../common/pmif_init.c pmif_clk.c @@ -44,7 +44,7 @@ ramstage-y += ../common/dsi.c ../common/mtk_mipi_dphy.c ramstage-y += ../common/emi.c ramstage-y += ../common/l2c_ops.c ramstage-y += ../common/mcu.c -ramstage-y += ../common/mmu_operations.c ../common/mmu_cmops.c +ramstage-y += ../common/mmu_operations.c ramstage-$(CONFIG_COMMONLIB_STORAGE_MMC) += ../common/msdc.c msdc.c ramstage-y += ../common/mtcmos.c mtcmos.c ramstage-y += ../common/pmic_wrap.c pmic_wrap.c pmif.c mt6366.c diff --git a/src/soc/mediatek/mt8188/Makefile.mk b/src/soc/mediatek/mt8188/Makefile.mk index 0469738ff4..f8a7faa577 100644 --- a/src/soc/mediatek/mt8188/Makefile.mk +++ b/src/soc/mediatek/mt8188/Makefile.mk @@ -24,7 +24,7 @@ romstage-y += ../common/emi.c romstage-y += ../common/l2c_ops.c romstage-y += ../common/memory.c romstage-y += ../common/memory_test.c -romstage-y += ../common/mmu_operations.c ../common/mmu_cmops.c +romstage-y += ../common/mmu_operations.c romstage-y += ../common/mt6315.c mt6315.c romstage-y += ../common/mt6359p.c mt6359p.c romstage-y += ../common/pmif.c ../common/pmif_clk.c ../common/pmif_init.c pmif_clk.c @@ -50,7 +50,7 @@ ramstage-y += ../common/emi.c ramstage-y += ../common/l2c_ops.c ramstage-y += ../common/mcu.c ramstage-y += ../common/mcupm.c -ramstage-y += ../common/mmu_operations.c ../common/mmu_cmops.c +ramstage-y += ../common/mmu_operations.c ramstage-$(CONFIG_COMMONLIB_STORAGE_MMC) += ../common/msdc.c msdc.c ramstage-y += ../common/mt6359p.c mt6359p.c ramstage-y += ../common/mtcmos.c mtcmos.c diff --git a/src/soc/mediatek/mt8189/Makefile.mk b/src/soc/mediatek/mt8189/Makefile.mk index 8eda710cc2..02e2847123 100644 --- a/src/soc/mediatek/mt8189/Makefile.mk +++ b/src/soc/mediatek/mt8189/Makefile.mk @@ -26,7 +26,7 @@ romstage-y += ../common/dramc_param.c romstage-y += dvfs.c romstage-y += ../common/emi.c romstage-y += ../common/memory.c ../common/memory_test.c ../common/memory_type.c -romstage-y += ../common/mmu_operations.c ../common/mmu_cmops.c +romstage-y += ../common/mmu_operations.c romstage-y += ../common/thermal.c thermal.c romstage-y += ../common/thermal_sram.c thermal_sram.c romstage-y += ../common/mt6315.c mt6315.c @@ -49,7 +49,7 @@ ramstage-y += ../common/dramc_info.c ramstage-y += ../common/emi.c ramstage-y += ../common/mcu.c mcupm.c ramstage-y += ../common/memory.c -ramstage-y += ../common/mmu_operations.c ../common/mmu_cmops.c +ramstage-y += ../common/mmu_operations.c ramstage-$(CONFIG_COMMONLIB_STORAGE_MMC) += ../common/msdc.c msdc.c ramstage-y += ../common/mt6315.c mt6315.c ramstage-y += ../common/mt6359p.c mt6359p.c diff --git a/src/soc/mediatek/mt8192/Makefile.mk b/src/soc/mediatek/mt8192/Makefile.mk index 7b88100478..ae75f13eb2 100644 --- a/src/soc/mediatek/mt8192/Makefile.mk +++ b/src/soc/mediatek/mt8192/Makefile.mk @@ -23,7 +23,7 @@ romstage-y += ../common/dram_init.c romstage-y += ../common/dramc_param.c romstage-y += ../common/l2c_ops.c romstage-y += ../common/memory.c ../common/memory_test.c -romstage-y += ../common/mmu_operations.c ../common/mmu_cmops.c +romstage-y += ../common/mmu_operations.c romstage-y += ../common/pll.c pll.c romstage-y += ../common/pmif.c ../common/pmif_clk.c ../common/pmif_init.c pmif_clk.c romstage-y += ../common/pmif_spi.c pmif_spi.c @@ -44,7 +44,7 @@ ramstage-y += ../common/dsi.c ../common/mtk_mipi_dphy.c ramstage-y += ../common/l2c_ops.c ramstage-y += ../common/mcu.c ramstage-y += ../common/mcupm.c -ramstage-y += ../common/mmu_operations.c ../common/mmu_cmops.c +ramstage-y += ../common/mmu_operations.c ramstage-$(CONFIG_COMMONLIB_STORAGE_MMC) += ../common/msdc.c msdc.c ramstage-y += ../common/mtcmos.c mtcmos.c ramstage-y += ../common/pmif.c ../common/pmif_init.c diff --git a/src/soc/mediatek/mt8195/Makefile.mk b/src/soc/mediatek/mt8195/Makefile.mk index 35c6c63385..6a9534436d 100644 --- a/src/soc/mediatek/mt8195/Makefile.mk +++ b/src/soc/mediatek/mt8195/Makefile.mk @@ -26,7 +26,7 @@ romstage-y += emi.c romstage-y += ../common/l2c_ops.c romstage-y += ../common/memory.c romstage-y += ../common/memory_test.c -romstage-y += ../common/mmu_operations.c ../common/mmu_cmops.c +romstage-y += ../common/mmu_operations.c romstage-y += ../common/pll.c pll.c romstage-y += scp.c romstage-y += ../common/pmif.c ../common/pmif_clk.c ../common/pmif_init.c pmif_clk.c @@ -59,7 +59,7 @@ ramstage-y += hdmi.c ramstage-y += ../common/l2c_ops.c ramstage-y += ../common/mcu.c ramstage-y += ../common/mcupm.c -ramstage-y += ../common/mmu_operations.c ../common/mmu_cmops.c +ramstage-y += ../common/mmu_operations.c ramstage-$(CONFIG_COMMONLIB_STORAGE_MMC) += ../common/msdc.c msdc.c ramstage-y += mt6360.c ramstage-y += ../common/mtcmos.c mtcmos.c diff --git a/src/soc/mediatek/mt8196/Makefile.mk b/src/soc/mediatek/mt8196/Makefile.mk index 5517b092e4..e4bb1bd523 100644 --- a/src/soc/mediatek/mt8196/Makefile.mk +++ b/src/soc/mediatek/mt8196/Makefile.mk @@ -37,7 +37,7 @@ romstage-y += l2c_ops.c romstage-y += modem_power_ctrl.c romstage-y += ../common/memory.c ../common/memory_type.c romstage-y += ../common/memory_test.c -romstage-y += ../common/mmu_operations.c ../common/mmu_cmops.c +romstage-y += ../common/mmu_operations.c romstage-y += ../common/mt6316.c mt6316.c romstage-y += ../common/mt6363.c mt6363.c romstage-y += ../common/mt6373.c mt6373.c @@ -68,7 +68,7 @@ ramstage-y += ../common/emi.c ramstage-y += gpueb.c ramstage-y += l2c_ops.c ramstage-y += ../common/mcu.c mcupm.c -ramstage-y += ../common/mmu_operations.c ../common/mmu_cmops.c +ramstage-y += ../common/mmu_operations.c ramstage-$(CONFIG_PCI) += ../common/pcie.c pcie.c ramstage-$(CONFIG_COMMONLIB_STORAGE_MMC) += msdc.c ramstage-y += ../common/mt6363.c mt6363.c