Patchwork [U-Boot,v3,4/7] wandboard: Add update_sd_firmware support

login
register
mail settings
Submitter Otavio Salvador
Date April 19, 2013, 1:42 p.m.
Message ID <1366378923-15615-4-git-send-email-otavio@ossystems.com.br>
Download mbox | patch
Permalink /patch/237950/
State Awaiting Upstream
Delegated to: Stefano Babic
Headers show

Comments

Otavio Salvador - April 19, 2013, 1:42 p.m.
This allow for easy update of firmware in the SD card from a running
U-Boot.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Changes in v3:
- New patch

Changes in v2: None

 include/configs/wandboard.h | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)
Stefano Babic - April 25, 2013, 7:39 p.m.
On 19/04/2013 15:42, Otavio Salvador wrote:
> This allow for easy update of firmware in the SD card from a running
> U-Boot.
> 
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> ---
> Changes in v3:
> - New patch
> 
> Changes in v2: None
> 
>  include/configs/wandboard.h | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
Applied to u-boot-imx branch, thanks.

Best regards,
Stefano Babic

Patch

diff --git a/include/configs/wandboard.h b/include/configs/wandboard.h
index bd3e727..0dc3286 100644
--- a/include/configs/wandboard.h
+++ b/include/configs/wandboard.h
@@ -47,6 +47,8 @@ 
 
 #undef CONFIG_CMD_IMLS
 
+#define CONFIG_CMD_SETEXPR
+
 #define CONFIG_BOOTDELAY		5
 
 #define CONFIG_SYS_MEMTEST_START	0x10000000
@@ -100,6 +102,20 @@ 
 	"mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
 	"mmcpart=" __stringify(CONFIG_SYS_MMC_ENV_PART) "\0" \
 	"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \
+	"update_sd_firmware_filename=u-boot.imx\0" \
+	"update_sd_firmware=" \
+		"if test ${ip_dyn} = yes; then " \
+			"setenv get_cmd dhcp; " \
+		"else " \
+			"setenv get_cmd tftp; " \
+		"fi; " \
+		"if mmc dev ${mmcdev}; then "	\
+			"if ${get_cmd} ${update_sd_firmware_filename}; then " \
+				"setexpr fw_sz ${filesize} / 0x200; " \
+				"setexpr fw_sz ${fw_sz} + 1; "	\
+				"mmc write ${loadaddr} 0x2 ${fw_sz}; " \
+			"fi; "	\
+		"fi\0" \
 	"mmcargs=setenv bootargs console=${console},${baudrate} " \
 		"root=${mmcroot}\0" \
 	"loadbootscript=" \