imx: mx6sxsabresd: add command and macros for boot m4 core
authorPeng Fan <peng.fan@nxp.com>
Thu, 28 Jan 2016 08:55:06 +0000 (16:55 +0800)
committerStefano Babic <sbabic@denx.de>
Sun, 21 Feb 2016 10:46:26 +0000 (11:46 +0100)
Introduce macros and command to support booting M4 core for
i.MX6SX SabreSD board.

Signed-off-by: Ye.Li <ye.li@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
include/configs/mx6sxsabresd.h

index 29e9c0898fce0fa6e0141fa8e0997fbd9c7ed1a5..fdf2396c148432505134641e80d8fa984606e3ee 100644 (file)
 #define CONFIG_MXC_UART
 #define CONFIG_MXC_UART_BASE           UART1_BASE
 
+#ifdef CONFIG_IMX_BOOTAUX
+/* Set to QSPI2 B flash at default */
+#define CONFIG_SYS_AUXCORE_BOOTDATA 0x78000000
+#define CONFIG_CMD_SETEXPR
+
+#define UPDATE_M4_ENV \
+       "m4image=m4_qspi.bin\0" \
+       "loadm4image=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${m4image}\0" \
+       "update_m4_from_sd=" \
+               "if sf probe 1:0; then " \
+                       "if run loadm4image; then " \
+                               "setexpr fw_sz ${filesize} + 0xffff; " \
+                               "setexpr fw_sz ${fw_sz} / 0x10000; "    \
+                               "setexpr fw_sz ${fw_sz} * 0x10000; "    \
+                               "sf erase 0x0 ${fw_sz}; " \
+                               "sf write ${loadaddr} 0x0 ${filesize}; " \
+                       "fi; " \
+               "fi\0" \
+       "m4boot=sf probe 1:0; bootaux "__stringify(CONFIG_SYS_AUXCORE_BOOTDATA)"\0"
+#else
+#define UPDATE_M4_ENV ""
+#endif
+
 #define CONFIG_EXTRA_ENV_SETTINGS \
+       UPDATE_M4_ENV \
        "script=boot.scr\0" \
        "image=zImage\0" \
        "console=ttymxc0\0" \