@@ -3,6 +3,7 @@ define Device/glinet_gl-mv1000
DEVICE_VENDOR := GL.iNet
DEVICE_MODEL := GL-MV1000
SOC := armada-3720
+ BOOT_SCRIPT := gl-mv1000
endef
TARGET_DEVICES += glinet_gl-mv1000
new file mode 100644
@@ -0,0 +1,28 @@
+# Boot script for GL.iNet GL-MV1000 to make it easier to boot from eMMC or SD
+# card.
+
+setenv bootargs "root=PARTUUID=@ROOT@-02 rw rootwait"
+
+if test -n "${console}"; then
+ setenv bootargs "${bootargs} ${console}"
+fi
+
+# Should mmc_dev not be present, default to internal MMC boot
+if test -z "${mmc_dev}"; then
+ setenv mmc_dev 0
+fi
+
+setenv mmcdev "${mmc_dev}"
+
+if test -n "${fdt_addr_r}"; then
+ setenv fdt_addr ${fdt_addr_r}
+fi
+
+if test -n "${kernel_addr_r}"; then
+ setenv kernel_addr ${kernel_addr_r}
+fi
+
+load mmc ${mmcdev}:1 ${fdt_addr} @DTB@.dtb
+load mmc ${mmcdev}:1 ${kernel_addr} Image
+
+booti ${kernel_addr} - ${fdt_addr}
This allows booting from internal eMMC or SD card just changing the U-Boot mmc_dev variable. In particular, setting mmc_dev to 1 will result in booting from the SD card. Setting the variable to 0 will result in internal eMMC boot (the default). Should the variable be unset or an error condition occur while reading from SD card, internal MMC booting will be tried. Signed-off-by: Enrico Mioso <mrkiko.rs@gmail.com> --- target/linux/mvebu/image/cortexa53.mk | 1 + target/linux/mvebu/image/gl-mv1000.bootscript | 28 +++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 target/linux/mvebu/image/gl-mv1000.bootscript