From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Bartosz Bilas Date: Thu, 2 Oct 2025 12:55:07 +0200 Subject: board: configs: enable fixup fdt memory at runtime for GRINN boards Overwrite the memory size in the devicetree that is passed to the kernel with the actual size detected. --- board/mediatek/genio-510-evk/mt8370_evk.c | 9 +++++++++ board/mediatek/genio-700-evk/mt8390_evk.c | 9 +++++++++ configs/grinn_genio_510_sbc_defconfig | 3 ++- configs/grinn_genio_700_sbc_defconfig | 3 ++- 4 files changed, 22 insertions(+), 2 deletions(-) diff --git a/board/mediatek/genio-510-evk/mt8370_evk.c b/board/mediatek/genio-510-evk/mt8370_evk.c index 111111111111..222222222222 100644 --- a/board/mediatek/genio-510-evk/mt8370_evk.c +++ b/board/mediatek/genio-510-evk/mt8370_evk.c @@ -64,6 +64,15 @@ static bool board_is_genio_510_evk_qspi(void) of_machine_is_compatible("mediatek,genio-510-evk-qspi"); } +int ft_board_setup(void *blob, struct bd_info *bd) +{ + /* + * Overwrite the memory size in the devicetree that is + * passed to the kernel with the actual size detected. + */ + return fdt_fixup_memory(blob, gd->ram_base, gd->ram_size); +} + void mediatek_capsule_update_board_setup(void) { fw_images[0].image_index = MT8370_FIT_IMAGE; diff --git a/board/mediatek/genio-700-evk/mt8390_evk.c b/board/mediatek/genio-700-evk/mt8390_evk.c index 111111111111..222222222222 100644 --- a/board/mediatek/genio-700-evk/mt8390_evk.c +++ b/board/mediatek/genio-700-evk/mt8390_evk.c @@ -62,6 +62,15 @@ static bool board_is_genio_700_evk(void) of_machine_is_compatible("mediatek,genio-700-evk"); } +int ft_board_setup(void *blob, struct bd_info *bd) +{ + /* + * Overwrite the memory size in the devicetree that is + * passed to the kernel with the actual size detected. + */ + return fdt_fixup_memory(blob, gd->ram_base, gd->ram_size); +} + static bool board_is_genio_700_evk_qspi(void) { return CONFIG_IS_ENABLED(TARGET_MT8188) && diff --git a/configs/grinn_genio_510_sbc_defconfig b/configs/grinn_genio_510_sbc_defconfig index 111111111111..222222222222 100644 --- a/configs/grinn_genio_510_sbc_defconfig +++ b/configs/grinn_genio_510_sbc_defconfig @@ -21,7 +21,8 @@ CONFIG_DISTRO_DEFAULTS=y CONFIG_FIT=y CONFIG_FIT_SIGNATURE=y CONFIG_LEGACY_IMAGE_FORMAT=y -# CONFIG_ARCH_FIXUP_FDT_MEMORY is not set +CONFIG_OF_CONTROL=y +CONFIG_OF_BOARD_SETUP=y CONFIG_DEFAULT_FDT_FILE="mediatek/mt8370-grinn-genio-510-sbc" # CONFIG_DISPLAY_BOARDINFO is not set # CONFIG_CMD_CONSOLE is not set diff --git a/configs/grinn_genio_700_sbc_defconfig b/configs/grinn_genio_700_sbc_defconfig index 111111111111..222222222222 100644 --- a/configs/grinn_genio_700_sbc_defconfig +++ b/configs/grinn_genio_700_sbc_defconfig @@ -21,7 +21,8 @@ CONFIG_DISTRO_DEFAULTS=y CONFIG_FIT=y CONFIG_FIT_SIGNATURE=y CONFIG_LEGACY_IMAGE_FORMAT=y -# CONFIG_ARCH_FIXUP_FDT_MEMORY is not set +CONFIG_OF_CONTROL=y +CONFIG_OF_BOARD_SETUP=y CONFIG_DEFAULT_FDT_FILE="mediatek/mt8390-grinn-genio-700-sbc" # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_BOARD_LATE_INIT=y -- Armbian