mirror of
https://github.com/smaeul/u-boot.git
synced 2025-09-14 22:16:03 +01:00
Support for Schneider Electric HMIBSC. Features: - Qualcomm Snapdragon 410C SoC - APQ8016 (4xCortex A53, Adreno 306) - 2GiB RAM - 64GiB eMMC, SD slot - WiFi and Bluetooth - 2x Host, 1x Device USB port - HDMI - Discrete TPM2 chip over SPI Features enabled in U-Boot: - RAUC updates - Environment protection - USB based ethernet adaptors Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
41 lines
1.3 KiB
Bash
41 lines
1.3 KiB
Bash
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
|
|
loadaddr=0x90000000
|
|
bootcmd=
|
|
echo "Booting RAUC A/B system";
|
|
setenv devtype mmc; setenv devnum 0;
|
|
test -n "${BOOT_ORDER}" || setenv BOOT_ORDER "A B";
|
|
test -n "${BOOT_A_LEFT}" || setenv BOOT_A_LEFT 3;
|
|
test -n "${BOOT_B_LEFT}" || setenv BOOT_B_LEFT 3;
|
|
setenv raucslot;
|
|
for BOOT_SLOT in "${BOOT_ORDER}"; do
|
|
if test "x${raucslot}" != "x"; then
|
|
echo "skip remaining slots...";
|
|
elif test "x${BOOT_SLOT}" = "xA"; then
|
|
if test ${BOOT_A_LEFT} -gt 0; then
|
|
setexpr BOOT_A_LEFT ${BOOT_A_LEFT} - 1;
|
|
echo "Found valid RAUC slot A";
|
|
setenv raucslot "rauc.slot=A";
|
|
setenv raucpart A; setenv distro_bootpart 6;
|
|
fi;
|
|
elif test "x${BOOT_SLOT}" = "xB"; then
|
|
if test ${BOOT_B_LEFT} -gt 0; then
|
|
setexpr BOOT_B_LEFT ${BOOT_B_LEFT} - 1;
|
|
echo "Found valid RAUC slot B";
|
|
setenv raucslot "rauc.slot=B";
|
|
setenv raucpart B; setenv distro_bootpart 7;
|
|
fi;
|
|
fi;
|
|
done;
|
|
if test -n "${raucslot}"; then
|
|
setenv bootargs console=ttyMSM1 root=PARTLABEL=rootfs_${raucpart} rw rootwait ${raucslot};
|
|
saveenv;
|
|
else
|
|
echo "No valid RAUC slot found. Resetting tries to 3";
|
|
setenv BOOT_A_LEFT 3;
|
|
setenv BOOT_B_LEFT 3;
|
|
saveenv;
|
|
reset;
|
|
fi;
|
|
load ${devtype} ${devnum}:${distro_bootpart} ${loadaddr} /boot/fitImage && bootm;
|