Files
auracaster-os/board/raspberrypi3_swupdate/boot.scr.txt
2025-04-17 13:21:38 +02:00

56 lines
1.9 KiB
Plaintext

# U-Boot boot script for Raspberry Pi 3 with A/B boot
# This script will be converted to boot.scr by the post-image.sh script
echo "DEBUG: Starting boot process..."
echo "DEBUG: U-Boot version: ${ver}"
echo "DEBUG: Board: ${board_name}"
# Set load addresses
setenv kernel_addr_r 0x01000000
setenv fdt_addr_r 0x02000000
echo "DEBUG: Load addresses set - kernel: ${kernel_addr_r}, fdt: ${fdt_addr_r}"
# Print current environment variables
echo "DEBUG: Current boot variables:"
echo "DEBUG: active_part=${active_part}"
echo "DEBUG: active_root=${active_root}"
echo "DEBUG: bootcount=${bootcount}"
echo "DEBUG: bootlimit=${bootlimit}"
# Read and increment boot count
echo "DEBUG: Checking bootcount..."
if test ${bootcount} -lt ${bootlimit}; then
echo "DEBUG: Incrementing bootcount from ${bootcount} to $((${bootcount} + 1))"
setexpr bootcount ${bootcount} + 1
echo "DEBUG: Saving environment..."
saveenv
echo "DEBUG: Environment saved"
fi
# If bootcount has reached bootlimit, switch to alternate boot
echo "DEBUG: Checking if bootcount >= bootlimit..."
if test ${bootcount} -ge ${bootlimit}; then
echo "Boot failed too many times. Switching to alternate partition."
echo "DEBUG: Running altbootcmd..."
run altbootcmd
echo "DEBUG: Resetting bootcount to 0"
setenv bootcount 0
echo "DEBUG: Saving environment..."
saveenv
echo "DEBUG: Environment saved"
fi
# List files in boot partition
echo "DEBUG: Listing files in boot partition:"
ls mmc 0:1
# Boot the system
echo "DEBUG: Preparing to boot from partition ${active_part}..."
echo "DEBUG: Will execute: bootcmd_${active_part}"
echo "DEBUG: bootcmd_${active_part}=${bootcmd_${active_part}}"
echo "DEBUG: Booting from partition ${active_part}..."
run bootcmd_${active_part}
# If we reach here, booting failed. Try alternate boot.
echo "DEBUG: Primary boot failed. Trying alternate partition..."
run altbootcmd