summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Ziswiler <marcel.ziswiler@toradex.com>2021-08-11 15:12:56 +0200
committerTom Warren <twarren@nvidia.com>2021-08-16 12:17:07 -0700
commit5e39e20a1af916fee3aabd61eedafadf29a9edb9 (patch)
treebf0f93fc0dc48fefa1184d7311a0d8e431538199
parenta0da2dda4ed9d0aee5265e9cd8876734f9f80e09 (diff)
board: apalis-tk1: launch toradex easy installer in usb recovery
The USB recovery mode is used by Toradex to load the Toradex Easy Installer image which supports further system images installation. Prepare for loading and launching the Toradex Easy Installer if the USB Recovery mode is activated. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
-rw-r--r--board/toradex/apalis-tk1/apalis-tk1.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/board/toradex/apalis-tk1/apalis-tk1.c b/board/toradex/apalis-tk1/apalis-tk1.c
index b97617cfca..2769b54601 100644
--- a/board/toradex/apalis-tk1/apalis-tk1.c
+++ b/board/toradex/apalis-tk1/apalis-tk1.c
@@ -38,8 +38,24 @@
int arch_misc_init(void)
{
if (readl(NV_PA_BASE_SRAM + NVBOOTINFOTABLE_BOOTTYPE) ==
- NVBOOTTYPE_RECOVERY)
- printf("USB recovery mode\n");
+ NVBOOTTYPE_RECOVERY) {
+ printf("USB recovery mode, attempting to boot Toradex Easy "
+ "Installer\n");
+ env_set("bootdelay", "-2");
+ env_set("defargs", "pcie_aspm=off user_debug=30");
+ env_set("fdt_high", "");
+ env_set("initrd_high", "");
+
+ env_set("setup", "env set setupargs igb_mac=${ethaddr} "
+ "consoleblank=0 no_console_suspend=1 "
+ "console=${console},${baudrate}n8 ${memargs}");
+ env_set("teziargs", "rootfstype=squashfs root=/dev/ram quiet "
+ "autoinstall");
+ env_set("vidargs", "video=HDMI-A-1:640x480-16@60D");
+ env_set("bootcmd", "run setup; env set bootargs ${defargs} "
+ "${setupargs} ${vidargs} ${teziargs}; bootm 0x80208000"
+ "#config@${soc}-${fdt_module}-${fdt_board}.dtb");
+ }
/* PCB Version Indication: V1.2 and later have GPIO_PV0 wired to GND */
gpio_request(TEGRA_GPIO(V, 0), "PCB Version Indication");