[PATCH v2 1/5] roc-pc-rk3399: Enable redundant SPI flash environment
Fabio Estevam
festevam at gmail.com
Wed Jul 1 19:57:56 CEST 2026
From: Fabio Estevam <festevam at nabladev.com>
Enable redundant environment storage in the SPI NOR flash by enabling
CONFIG_ENV_REDUNDANT and defining CONFIG_ENV_OFFSET_REDUND.
Move the primary environment to 0x3f0000 and place the redundant copy
at 0x3f8000, matching the existing SPI NOR layout.
Having two copies of the environment improves robustness against
power loss or interrupted writes and is useful for software update
frameworks such as SWUpdate that modify the U-Boot environment during
system updates.
Signed-off-by: Fabio Estevam <festevam at nabladev.com>
---
Changes since v1:
- Use CONFIG_ENV_OFFSET=0x3F0000 and CONFIG_ENV_OFFSET_REDUND=0x3F8000.
configs/roc-pc-rk3399_defconfig | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/configs/roc-pc-rk3399_defconfig b/configs/roc-pc-rk3399_defconfig
index 1df5cb03adbb..c7cbe8ec34b3 100644
--- a/configs/roc-pc-rk3399_defconfig
+++ b/configs/roc-pc-rk3399_defconfig
@@ -7,6 +7,6 @@ CONFIG_NR_DRAM_BANKS=1
CONFIG_SF_DEFAULT_SPEED=30000000
CONFIG_ENV_SIZE=0x8000
-CONFIG_ENV_OFFSET=0x3F8000
+CONFIG_ENV_OFFSET=0x3F0000
CONFIG_ENV_SECT_SIZE=0x1000
CONFIG_DEFAULT_DEVICE_TREE="rockchip/rk3399-roc-pc"
CONFIG_DM_RESET=y
@@ -17,6 +17,7 @@ CONFIG_SYS_LOAD_ADDR=0x800800
CONFIG_SF_DEFAULT_BUS=1
CONFIG_DEBUG_UART_BASE=0xFF1A0000
CONFIG_DEBUG_UART_CLOCK=24000000
+CONFIG_ENV_OFFSET_REDUND=0x3F8000
CONFIG_SPL_SPI_FLASH_SUPPORT=y
CONFIG_SPL_SPI=y
CONFIG_DEBUG_UART=y
@@ -39,6 +40,7 @@ CONFIG_CMD_TIME=y
CONFIG_SPL_OF_CONTROL=y
CONFIG_OF_SPL_REMOVE_PROPS="clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
CONFIG_ENV_IS_IN_SPI_FLASH=y
+CONFIG_ENV_REDUNDANT=y
CONFIG_ENV_RELOC_GD_ENV_ADDR=y
CONFIG_ROCKCHIP_GPIO=y
CONFIG_SYS_I2C_ROCKCHIP=y
--
2.43.0
More information about the U-Boot
mailing list