[PATCH v2 06/13] smegw01: Only commit to new partition if update was successful
Fabio Estevam
festevam at gmail.com
Fri Apr 21 12:56:49 CEST 2023
From: Eduard Strehlau <eduard at lionizers.com>
When performing rootfs update via swupdate, it is convenient to check the
'ustate' variable to decide whether the update succeeded or not.
Signed-off-by: Eduard Strehlau <eduard at lionizers.com>
Signed-off-by: Fabio Estevam <festevam at denx.de>
---
Changes since v1:
- None
include/configs/smegw01.h | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/include/configs/smegw01.h b/include/configs/smegw01.h
index 05edaac42f..277c828d0e 100644
--- a/include/configs/smegw01.h
+++ b/include/configs/smegw01.h
@@ -30,13 +30,19 @@
"bootm_size=0x10000000\0" \
"mmcdev=0\0" \
"mmcpart=1\0" \
+ "mmcpart_committed=1\0" \
"mmcargs=setenv bootargs console=${console},${baudrate} " \
- "root=/dev/mmcblk0p${mmcpart} rootwait rw " \
+ "root=/dev/mmcblk0p${mmcpart_committed} rootwait rw " \
__stringify(EXTRA_BOOTPARAMS) "\0" \
+ "commit_mmc=if test \"${ustate}\" = 1 -a \"${mmcpart}\" != \"${mmcpart_committed}\"; then " \
+ "setenv mmcpart_committed ${mmcpart};" \
+ "saveenv;" \
+ "fi;\0" \
"bootlimit=3\0" \
- "loadimage=load mmc ${mmcdev}:${mmcpart} ${loadaddr} boot/${image}\0" \
- "loadfdt=load mmc ${mmcdev}:${mmcpart} ${fdt_addr} boot/${fdtfile}\0" \
+ "loadimage=load mmc ${mmcdev}:${mmcpart_committed} ${loadaddr} boot/${image}\0" \
+ "loadfdt=load mmc ${mmcdev}:${mmcpart_committed} ${fdt_addr} boot/${fdtfile}\0" \
"mmcboot=echo Booting from mmc ...; " \
+ "run commit_mmc; " \
"run mmcargs; " \
"if run loadfdt; then " \
"if bootz ${loadaddr} - ${fdt_addr}; then " \
@@ -48,10 +54,12 @@
"run altbootcmd; " \
"fi;\0" \
"altbootcmd=echo Performing rollback...; " \
- "if test \"${mmcpart}\" = 1; then " \
+ "if test \"${mmcpart_committed}\" = 1; then " \
"setenv mmcpart 2; " \
+ "setenv mmcpart_committed 2;" \
"else " \
"setenv mmcpart 1; " \
+ "setenv mmcpart_committed 1;" \
"fi; setenv bootcount 0; setenv upgrade_available; setenv ustate 3; saveenv; " \
"run bootcmd;\0"
--
2.38.1
More information about the U-Boot
mailing list