[U-Boot] [PATCH] rockchip: move CONFIG_ENV_SIZE and CONFIG_ENV_OFFSET to Kconfig

These settings are not not user visible via a menuconfig prompt. This is necessary to have the possibility to select new default values if CONFIG_IS_IN_* is changed (interactively or with oldconfig). Otherwise it will always be set to a previous value if used with a prompt. As an example if we do a defconfig with CONFIG_IS_IN_MMC and change it to CONFIG_IS_IN_SPI_FLASH via menuconfig, ENV_SIZE and ENV_OFFSET will not be changed to the correct values as defconfig will already have set them to the default values of CONFIG_IS_IN_MMC in .config.
Signed-off-by: Klaus Goger klaus.goger@theobroma-systems.com
---
board/theobroma-systems/puma_rk3399/Kconfig | 6 ++++++ env/Kconfig | 19 +++++++++++++++++++ include/configs/puma_rk3399.h | 8 -------- include/configs/rockchip-common.h | 6 ------ 4 files changed, 25 insertions(+), 14 deletions(-)
diff --git a/board/theobroma-systems/puma_rk3399/Kconfig b/board/theobroma-systems/puma_rk3399/Kconfig index a645590d78..80b3460d4c 100644 --- a/board/theobroma-systems/puma_rk3399/Kconfig +++ b/board/theobroma-systems/puma_rk3399/Kconfig @@ -12,4 +12,10 @@ config SYS_CONFIG_NAME config BOARD_SPECIFIC_OPTIONS # dummy def_bool y
+config ENV_SIZE + default 0x2000 if ENV_IS_IN_SPI_FLASH + +config ENV_OFFSET + default 0x3c000 if ENV_IS_IN_SPI_FLASH + endif diff --git a/env/Kconfig b/env/Kconfig index 2477bf8530..12c6d80785 100644 --- a/env/Kconfig +++ b/env/Kconfig @@ -427,4 +427,23 @@ config ENV_UBI_VOLUME
endif
+if ARCH_ROCKCHIP + +config ENV_OFFSET + hex + depends on !ENV_IS_IN_UBI + depends on !ENV_IS_NOWHERE + default 0x3f8000 + help + Offset from the start of the device (or partition) + +config ENV_SIZE + hex + depends on !ENV_IS_NOWHERE + default 0x8000 + help + Size of the environment storage area + +endif + endmenu diff --git a/include/configs/puma_rk3399.h b/include/configs/puma_rk3399.h index 39d0786266..6523a7c34a 100644 --- a/include/configs/puma_rk3399.h +++ b/include/configs/puma_rk3399.h @@ -9,14 +9,6 @@
#include <configs/rk3399_common.h>
-/* - * SPL @ 32kB for ~130kB - * ENV @ 240KB for 8kB - * FIT payload (ATF, U-Boot, FDT) @ 256kB - */ -#undef CONFIG_ENV_OFFSET -#define CONFIG_ENV_OFFSET (240 * 1024) - #if defined(CONFIG_ENV_IS_IN_MMC) #define CONFIG_SYS_MMC_ENV_DEV 1 #elif defined(CONFIG_ENV_IS_IN_SPI_FLASH) diff --git a/include/configs/rockchip-common.h b/include/configs/rockchip-common.h index 35d948ae29..9da6dcaf72 100644 --- a/include/configs/rockchip-common.h +++ b/include/configs/rockchip-common.h @@ -61,12 +61,6 @@
#endif
-/* - * Rockchip SoCs use fixed ENV 32KB@(4MB-32KB) - */ -#define CONFIG_ENV_OFFSET (SZ_4M - SZ_32K) -#define CONFIG_ENV_SIZE SZ_32K - #define CONFIG_DISPLAY_BOARDINFO_LATE
#endif /* _ROCKCHIP_COMMON_H_ */

These settings are not not user visible via a menuconfig prompt. This is necessary to have the possibility to select new default values if CONFIG_IS_IN_* is changed (interactively or with oldconfig). Otherwise it will always be set to a previous value if used with a prompt. As an example if we do a defconfig with CONFIG_IS_IN_MMC and change it to CONFIG_IS_IN_SPI_FLASH via menuconfig, ENV_SIZE and ENV_OFFSET will not be changed to the correct values as defconfig will already have set them to the default values of CONFIG_IS_IN_MMC in .config.
Signed-off-by: Klaus Goger klaus.goger@theobroma-systems.com
board/theobroma-systems/puma_rk3399/Kconfig | 6 ++++++ env/Kconfig | 19 +++++++++++++++++++ include/configs/puma_rk3399.h | 8 -------- include/configs/rockchip-common.h | 6 ------ 4 files changed, 25 insertions(+), 14 deletions(-)
Applied to u-boot-rockchip, thanks!
participants (2)
-
Klaus Goger
-
Philipp Tomsich