37 lines
1.4 KiB
Plaintext
37 lines
1.4 KiB
Plaintext
# U-Boot environment variables for A/B boot system
|
|
# Default variables for first boot - these will be modified during operation
|
|
|
|
# Active partition (A or B)
|
|
active_part=A
|
|
active_root=/dev/mmcblk0p2
|
|
inactive_part=B
|
|
inactive_root=/dev/mmcblk0p3
|
|
|
|
# Boot attempt counters
|
|
bootcount=0
|
|
bootlimit=3
|
|
|
|
# Default bootcmd
|
|
bootcmd=run bootcmd_${active_part}
|
|
|
|
# Kernel boot arguments
|
|
bootargs=console=ttyAMA0,115200 console=tty1 root=${active_root} rootwait
|
|
|
|
# Commands for booting from A or B partitions
|
|
bootcmd_A=setenv bootargs console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootwait; load mmc 0:1 ${kernel_addr_r} zImage; load mmc 0:1 ${fdt_addr_r} bcm2710-rpi-3-b.dtb; bootz ${kernel_addr_r} - ${fdt_addr_r}
|
|
bootcmd_B=setenv bootargs console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p3 rootwait; load mmc 0:1 ${kernel_addr_r} zImage; load mmc 0:1 ${fdt_addr_r} bcm2710-rpi-3-b.dtb; bootz ${kernel_addr_r} - ${fdt_addr_r}
|
|
|
|
# Fallback logic for failed boots
|
|
altbootcmd=if test ${active_part} = A; then setenv active_part B; setenv active_root /dev/mmcblk0p3; setenv inactive_part A; setenv inactive_root /dev/mmcblk0p2; else setenv active_part A; setenv active_root /dev/mmcblk0p2; setenv inactive_part B; setenv inactive_root /dev/mmcblk0p3; fi; setenv bootcount 0; saveenv; run bootcmd
|
|
|
|
# Memory addresses
|
|
kernel_addr_r=0x01000000
|
|
fdt_addr_r=0x02000000
|
|
|
|
# Board name
|
|
board_name=rpi3
|
|
|
|
# Network configuration (DHCP)
|
|
autoload=no
|
|
ethact=smi
|
|
ethaddr_sdio0=00:44:55:66:77:88 |