aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mvebu/image/udpu.bootscript
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/mvebu/image/udpu.bootscript')
-rw-r--r--target/linux/mvebu/image/udpu.bootscript38
1 files changed, 38 insertions, 0 deletions
diff --git a/target/linux/mvebu/image/udpu.bootscript b/target/linux/mvebu/image/udpu.bootscript
new file mode 100644
index 0000000000..1da35a793e
--- /dev/null
+++ b/target/linux/mvebu/image/udpu.bootscript
@@ -0,0 +1,38 @@
+# Bootscript for Methode uDPU device
+# Device and variables may vary between different revisions
+# of device, so we need to make sure everything is set correctly.
+
+# Set the LED's correctly
+gpio clear 12; gpio clear 40; gpio clear 45;
+
+# Find eMMC device,
+if mmc dev 0; then
+ setenv mmcdev 0
+ setenv rootdev 'root=/dev/mmcblk0p3'
+elif mmc dev 1; then
+ setenv mmcdev 1
+ setenv rootdev 'root=/dev/mmcblk1p3'
+fi
+
+# Set the variables if necessary
+if test ${kernel_addr_r}; then
+ setenv kernel_addr_r 0x5000000
+fi
+
+if test ${fdt_add_r}; then
+ setenv fdt_addr_r 0x4f00000
+fi
+
+setenv console 'console=ttyMV0,115200 earlycon=ar3700_uart,0xd0012000'
+setenv bootargs ${console} $rootdev rw rootwait
+
+load mmc ${mmcdev}:1 ${fdt_addr_r} @DTB@.dtb
+load mmc ${mmcdev}:1 ${kernel_addr_r} Image
+
+booti ${kernel_addr_r} - ${fdt_addr_r}
+
+# If the boot command fails, fallback to recovery image
+echo '-- Boot failed, falling back to the recovery image --'
+setenv bootargs $console
+load mmc ${mmcdev}:2 ${kernel_addr_r} recovery.itb
+bootm ${kernel_addr_r}