aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Goger <klaus.goger@theobroma-systems.com>2017-12-11 17:56:08 +0100
committerPhilipp Tomsich <philipp.tomsich@theobroma-systems.com>2017-12-18 00:26:16 +0100
commit81f53b0dafdfe9458f6d04fc5ec2732c2ea23a71 (patch)
treefeb5d29294e2db8ade8ae4032e66f78dbdbaf96c
parentaa41220f6f7c79284ce5880e2533f81c125237a4 (diff)
downloadu-boot-81f53b0dafdfe9458f6d04fc5ec2732c2ea23a71.zip
u-boot-81f53b0dafdfe9458f6d04fc5ec2732c2ea23a71.tar.gz
u-boot-81f53b0dafdfe9458f6d04fc5ec2732c2ea23a71.tar.bz2
rockchip: move CONFIG_ENV_SIZE and CONFIG_ENV_OFFSET to Kconfig
This commit adds ENV_SIZE and ENV_OFFSET configuration items for ARCH_ROCKCHIP, but keeps these non-visible (i.e. not prompt is given). With these new items present, the configuration from the header files is moved to Kconfig. Keeping these non-visible 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> Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
-rw-r--r--board/theobroma-systems/puma_rk3399/Kconfig6
-rw-r--r--env/Kconfig18
-rw-r--r--include/configs/puma_rk3399.h8
-rw-r--r--include/configs/rockchip-common.h6
4 files changed, 24 insertions, 14 deletions
diff --git a/board/theobroma-systems/puma_rk3399/Kconfig b/board/theobroma-systems/puma_rk3399/Kconfig
index a645590..80b3460 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 2477bf8..bef6e89 100644
--- a/env/Kconfig
+++ b/env/Kconfig
@@ -427,4 +427,22 @@ 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
+ 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 39d0786..6523a7c 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 4139a7b..f465d35 100644
--- a/include/configs/rockchip-common.h
+++ b/include/configs/rockchip-common.h
@@ -59,12 +59,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_ */