From 52726d24d6c8e857f40d9125b0bce5f6272b6022 Mon Sep 17 00:00:00 2001 From: Eduard Strehlau Date: Wed, 26 Apr 2023 13:04:53 -0300 Subject: [PATCH] smegw01: Only commit to new partition if update was successful 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 Signed-off-by: Fabio Estevam --- 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.39.5