File boot.script of Package pinephone-helpers
setenv kernel '/Image'
setenv initrd '/initrd'
setenv fdtfile 'sun50i-a64-pinephone-1.2.dtb'
setenv fdtfolder '/dtb/allwinner'
setenv flavor 'pinephone'
setenv bootdevs 'mmc'
setenv bootparts '${unit}:2'
setenv initrd_high '0xffffffff'
setenv fdt_high '0xffffffff'
setenv boottype 'booti'
setenv should_use_fdt '1'
setenv should_load_fdt '1'
setenv setdev 'mmc dev ${unit}'
setenv units '0 1'
setenv sizeprefix '0x'
setenv use_fdt_addr_r '1'
setenv should_use_splashfile '0'
setenv splashfile 'opensuse.bmp'
setenv use_gpio '1'
setenv gpios '114 115 116'
setenv bootargs "security=selinux selinux=1 loglevel=7 splash=silent systemd.show_status=1 console=ttyS0,115200n8 console=tty0 earlycon=uart,mmio32,0x01c28000 panic=10 consoleblank=0 root=LABEL=ROOT mobileroot=LABEL=ROOT luks "
test -n "$kerneladdr" || setenv kerneladdr ${kernel_addr_r}
test -n "$ramdiskaddr" || setenv ramdiskaddr ${ramdisk_addr_r}
if test 1${should_use_splashfile} = 11; then
setenv load_splashfile 'if ${fs}load ${bootdev} ${bootpart} ${kerneladdr} ${splashfile}; then; bmp display ${kerneladdr}; fi;'
else
setenv load_splashfile ''
fi
setenv load_kernel '${fs}load ${bootdev} ${bootpart} ${kerneladdr} ${kernel}'
setenv load_initrd '${fs}load ${bootdev} ${bootpart} ${ramdiskaddr} ${initrd}; setenv rd_filesize ${sizeprefix}${filesize}'
if test 1${should_load_fdt} = 11; then
if test 0${fdtfile} = 0call_findfdt; then
run findfdt
fi
if test 0${fdtfile} = 0call_autodetectfdt; then
run autodetectfdt
fi
if test -n "$validatefdt"; then
# Beagleboard xM needs to run validatefdt with latest u-boot, but bootpart is 0:2 by default and prefix file with $bootdir.
setenv bootpart 0:1
setenv bootdir ${fdtfolder}
run validatefdt
fi
setenv loadfdt '${fs}load ${bootdev} ${bootpart} ${fdtaddr} ${fdtfolder}/${fdtfile}'
else
setenv loadfdt ''
fi
if test 1${use_fdt_addr} = 11; then
# Calxeda systems use $fdt_addr rather than $fdtaddr
setenv fdtaddr $fdt_addr
fi
if test 1${use_fdt_addr_r} = 11; then
# At least upstream rpi_b uses $fdt_addr_r rather than $fdtaddr
setenv fdtaddr ${fdt_addr_r}
fi
if test 1${should_use_fdt} = 11; then
setenv boot_kernel '${boottype} ${kerneladdr} ${ramdiskaddr}:${rd_filesize} ${fdtaddr}'
else
setenv boot_kernel '${boottype} ${kerneladdr} ${ramdiskaddr}:${rd_filesize}'
fi
if test 1${remove_fdt_high} = 11; then
setenv fdt_high
fi
if test 1${use_gpio} = 11; then
setenv gpioset 'for pin in ${gpios}; do gpio set ${pin}; done'
setenv gpioclear 'for pin in ${gpios}; do gpio clear ${pin}; done'
else
setenv gpioset ''
sentenv gpioclear ''
fi
setenv doit 'run gpioset; run load_splashfile; if run load_kernel; then; run load_initrd; run loadfdt; run gpioclear; run boot_kernel; fi'
setenv bootcmd 'for bootdev in ${bootdevs}; do for unit in ${units}; do setenv bootpart; for bootpart in ${bootparts}; do setenv fix_bootpart "setenv bootpart $bootpart"; run fix_bootpart; run setdev; run doit;
done; done; done'
boot