blob: 2e7b65968d1dc564f0b0e495417065e0a1308903 [file] [log] [blame]
/* SPDX-License-Identifier: GPL-2.0+ */
/*
* Copyright (C) 2017 Armadeus Systems
*/
/* Environment is stored in the eMMC boot partition */
env_version=100
consoledev=ttymxc0
board_name=opos6ul
fdt_addr=0x88000000
fdt_high=0xffffffff
fdt_name=opos6uldev
initrd_high=0xffffffff
ip_dyn=yes
stdin=serial
stdout=serial
stderr=serial
mmcdev=0
mmcpart=2
mmcroot=/dev/mmcblk0p2 ro
mmcrootfstype=ext4 rootwait
kernelimg=opos6ul-linux.bin
splashpos=0,0
splashimage=CONFIG_SYS_LOAD_ADDR
check_env=if test -n ${flash_env_version};
then env default env_version;
else env set flash_env_version ${env_version}; env save;
fi;
if itest ${flash_env_version} != ${env_version}; then
echo "*** Warning - Environment version
change suggests: run flash_reset_env; reset";
env default flash_reset_env;
else exit; fi;
flash_reset_env=env default -f -a && saveenv &&
echo Environment variables erased!
download_uboot_spl=tftpboot ${loadaddr} ${board_name}-u-boot.spl
flash_uboot_spl=
if mmc dev 0 1; then
setexpr sz ${filesize} / 0x200;
setexpr sz ${sz} + 1;
if mmc write ${loadaddr} 0x2 ${sz}; then
echo Flashing of U-Boot SPL succeed;
else echo Flashing of U-Boot SPL failed;
fi;
fi;
download_uboot_img=tftpboot ${loadaddr} ${board_name}-u-boot.img
flash_uboot_img=
if mmc dev 0 1; then
setexpr sz ${filesize} / 0x200;
setexpr sz ${sz} + 1;
if mmc write ${loadaddr} 0x8a ${sz}; then
echo Flashing of U-Boot image succeed;
else echo Flashing of U-Boot image failed;
fi;
fi;
update_uboot=run download_uboot_spl flash_uboot_spl
download_uboot_img flash_uboot_img
download_kernel=tftpboot ${loadaddr} ${kernelimg}
flash_kernel=
if ext4write mmc ${mmcdev}:${mmcpart} ${loadaddr} /boot/${kernelimg} ${filesize}; then
echo kernel update succeed;
else echo kernel update failed;
fi;
update_kernel=run download_kernel flash_kernel
download_dtb=tftpboot ${fdt_addr} imx6ul-${fdt_name}.dtb
flash_dtb=
if ext4write mmc ${mmcdev}:${mmcpart} ${fdt_addr} /boot/imx6ul-${fdt_name}.dtb ${filesize}; then
echo dtb update succeed;
else echo dtb update in failed;
fi;
update_dtb=run download_dtb flash_dtb
download_rootfs=tftpboot ${loadaddr} ${board_name}-rootfs.ext4
flash_rootfs=
if mmc dev 0 0; then
setexpr nbblocks ${filesize} / 0x200;
setexpr nbblocks ${nbblocks} + 1;
if mmc write ${loadaddr} 0x40800 ${nbblocks}; then
echo Flashing of rootfs image succeed;
else echo Flashing of rootfs image failed;
fi;
fi;
update_rootfs=run download_rootfs flash_rootfs
flash_failsafe=
if mmc dev 0 0; then
setexpr nbblocks ${filesize} / 0x200;
setexpr nbblocks ${nbblocks} + 1;
if mmc write ${loadaddr} 0x800 ${nbblocks}; then
echo Flashing of rootfs image in failsafe partition succeed;
else echo Flashing of rootfs image in failsafe partition failed;
fi;
fi;
update_failsafe=run download_rootfs flash_failsafe
download_userdata=tftpboot ${loadaddr} ${board_name}-user_data.ext4
flash_userdata=
if mmc dev 0 0; then
setexpr nbblocks ${filesize} / 0x200;
setexpr nbblocks ${nbblocks} + 1;
if mmc write ${loadaddr} 0 ${nbblocks}; then
echo Flashing of user_data image succeed;
else echo Flashing of user_data image failed;
fi;
fi;
update_userdata=run download_userdata flash_userdata; mmc rescan
erase_userdata=
if mmc dev 0 0; then
echo Erasing eMMC User Data partition, no way out...;
mw ${loadaddr} 0 0x200000;
mmc write ${loadaddr} 0 0x1000;
mmc write ${loadaddr} 0x800 0x1000;
mmc write ${loadaddr} 0x40800 0x1000;
mmc write ${loadaddr} 0x440800 0x1000;
fi;
mmc rescan
update_all=run update_rootfs update_uboot
initargs=setenv bootargs console=${consoledev},${baudrate} ${extrabootargs}
addipargs=setenv bootargs ${bootargs}
ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:eth0:off
addmmcargs=setenv bootargs ${bootargs} root=${mmcroot}
rootfstype=${mmcrootfstype}
emmcboot=run initargs; run addmmcargs;
load mmc ${mmcdev}:${mmcpart} ${loadaddr} /boot/${kernelimg} &&
load mmc ${mmcdev}:${mmcpart} ${fdt_addr} /boot/imx6ul-${fdt_name}.dtb &&
bootz ${loadaddr} - ${fdt_addr};
emmcsafeboot=setenv mmcpart 1; setenv mmcroot /dev/mmcblk0p1 ro; run emmcboot;
addnfsargs=setenv bootargs ${bootargs} root=/dev/nfs rw
nfsroot=${serverip}:${rootpath}
nfsboot=run initargs; run addnfsargs addipargs;
nfs ${loadaddr} ${serverip}:${rootpath}/boot/${kernelimg} &&
nfs ${fdt_addr} ${serverip}:${rootpath}/boot/imx6ul-${fdt_name}.dtb &&
bootz ${loadaddr} - ${fdt_addr};