arm: xea: Move XEA's environment variables from xea.h to xea.env

The default set of environment variables from CFG_EXTRA_ENV_SETTINGS
has been moved to a separate file - board/liebherr/xea/xea.env

Adjustments done:
- fitImage support
- SPI-NOR layout re-organization

Signed-off-by: Lukasz Majewski <lukma@denx.de>
This commit is contained in:
Lukasz Majewski 2024-01-15 14:51:28 +01:00 committed by Fabio Estevam
parent 1aebea9bde
commit dbde4c6155
2 changed files with 139 additions and 140 deletions

139
board/liebherr/xea/xea.env Normal file
View file

@ -0,0 +1,139 @@
bootmode=update
bootpri=mmc_mmc
bootsec=sf_swu
consdev=ttyAMA0
baudrate=115200
dtbfile=imx28-xea.dtb
rootdev=/dev/mmcblk0p2
netdev=eth0
swufile=swupdate-image-xea-upd.itb
sf_kernel_offset=0xA0000
sf_swu_size=0xF40000
ethact=FEC
arch=xea
lwe_env=
if dhcp ${loadaddr} ${hostname}/${lwe_uenv} ; then
source ${loadaddr};
fi
lwe_uenv=env_uboot_xea.bin
do_update_mmc=
if mmc rescan ; then
mmc dev 0 ${update_mmc_part} ;
if dhcp ${hostname}/${update_filename} ; then
setexpr fw_sz ${filesize} / 0x200 ;
setexpr fw_sz ${fw_sz} + 1 ;
mmc write ${loadaddr} ${update_offset} ${fw_sz} ;
fi ;
fi
do_update_sf=
if sf probe ; then
if dhcp ${hostname}/${update_filename} ; then
sf erase ${update_offset} +${filesize} ;
sf write ${loadaddr} ${update_offset} ${filesize} ;
fi ;
fi
factory_reset=
if sf probe ; then
run update_swu ;
setenv bootmode update ;
saveenv ;
fi
update_spl_filename=u-boot.sb
update_spl=
setenv update_filename ${update_spl_filename} ;
setenv update_offset 0 ;
run do_update_sf
update_uboot_filename=u-boot.img
update_uboot=
setenv update_filename ${update_uboot_filename} ;
setenv update_offset 0x10000 ;
run do_update_sf ;
setenv update_mmc_part 1 ;
setenv update_offset 0 ;
run do_update_mmc ;
setenv update_mmc_part 2 ;
run do_update_mmc
update_kernel_filename=uImage
update_kernel=
setenv update_mmc_part 1 ;
setenv update_filename ${update_kernel_filename} ;
setenv update_offset 0x800 ;
run do_update_mmc ;
setenv update_filename ${dtbfile} ;
setenv update_offset 0x400 ;
run do_update_mmc
update_swu=
setenv update_filename ${swufile} ;
setenv update_offset ${sf_kernel_offset} ;
run do_update_sf
addcons=
setenv bootargs ${bootargs}
console=${consdev},${baudrate}
addip=
setenv bootargs ${bootargs}
ip=${ipaddr}:${serverip}:${gatewayip}:
${netmask}:${hostname}:${netdev}:off
addmisc=
setenv bootargs ${bootargs} ${miscargs}
addargs=run addcons addmisc
mmcload=
mmc rescan ;
mmc dev 0 1 ;
mmc read ${loadaddr} 0x800 0x2000 ;
mmc read ${dtbaddr} 0x400 0x80
netload=
dhcp ${loadaddr} ${hostname}/${bootfile} ;
tftp ${dtbaddr} ${hostname}/${dtbfile}
usbload=
usb start ;
load usb 0:1 ${loadaddr} ${bootfile}
miscargs=panic=1
mmcargs=setenv bootargs root=${rootdev} rw rootwait
nfsargs=
setenv bootargs root=/dev/nfs rw
nfsroot=${serverip}:${rootpath},v3,tcp
mmc_mmc=
if run mmcload mmcargs addargs ; then
bootm ${loadaddr} - ${dtbaddr} ;
fi
mmc_nfs=
if run mmcload nfsargs addip addargs ; then
bootm ${loadaddr} - ${dtbaddr} ;
fi
sf_mmc=
if run sfload mmcargs addargs ; then
bootm ${loadaddr} - ${dtbaddr} ;
fi
sf_swu=
if sf probe ; then
sf read ${loadaddr} ${sf_kernel_offset} ${sf_swu_size} ;
setenv bootargs root=/dev/ram0 rw ;
run addargs ;
bootm ${loadaddr} ;
fi
net_mmc=
if run netload mmcargs addargs ; then
bootm ${loadaddr} - ${dtbaddr} ;
fi
net_nfs=
if run netload nfsargs addip addargs ; then
bootm ${loadaddr} - ${dtbaddr} ;
fi
prebootcmd=
if test ${envsaved} != y ; then ;
setenv envsaved y ;
saveenv ;
fi ;
if test ${bootmode} = normal ; then
setenv bootdelay 0 ;
setenv bootpri mmc_mmc ;
elif test ${bootmode} = devel ; then
setenv bootdelay 3 ;
setenv bootpri net_mmc ;
else
if test ${bootmode} != update ; then
echo Warning: unknown bootmode ${bootmode} ;
fi ;
setenv bootdelay 1 ;
setenv bootpri sf_swu ;
fi

View file

@ -25,146 +25,6 @@
#define PHYS_SDRAM_1_SIZE 0x10000000 /* Max 256 MB RAM */
#define CFG_SYS_SDRAM_BASE PHYS_SDRAM_1
/* Extra Environment */
#define CFG_EXTRA_ENV_SETTINGS \
"bootmode=update\0" \
"bootpri=mmc_mmc\0" \
"bootsec=sf_swu\0" \
"consdev=ttyAMA0\0" \
"baudrate=115200\0" \
"dtbaddr=0x44000000\0" \
"dtbfile=imx28-xea.dtb\0" \
"rootdev=/dev/mmcblk0p2\0" \
"netdev=eth0\0" \
"rdaddr=0x43000000\0" \
"swufile=swupdate.img\0" \
"sf_kernel_offset=0x100000\0" \
"sf_kernel_size=0x400000\0" \
"sf_swu_offset=0x500000\0" \
"sf_swu_size=0x800000\0" \
"rootpath=/opt/eldk-5.5/armv5te/rootfs-qte-sdk\0" \
"do_update_mmc=" \
"if mmc rescan ; then " \
"mmc dev 0 ${update_mmc_part} ; " \
"if dhcp ${hostname}/${update_filename} ; then " \
"setexpr fw_sz ${filesize} / 0x200 ; " /* SD block size */ \
"setexpr fw_sz ${fw_sz} + 1 ; " \
"mmc write ${loadaddr} ${update_offset} ${fw_sz} ; " \
"fi ; " \
"fi\0" \
"do_update_sf=" \
"if sf probe ; then " \
"if dhcp ${hostname}/${update_filename} ; then " \
"sf erase ${update_offset} +${filesize} ; " \
"sf write ${loadaddr} ${update_offset} ${filesize} ; " \
"fi ; " \
"fi\0" \
"update_spl_filename=u-boot.sb\0" \
"update_spl=" \
"setenv update_filename ${update_spl_filename} ; " \
"setenv update_offset 0 ; " \
"run do_update_sf\0" \
"update_uboot_filename=u-boot.img\0" \
"update_uboot=" \
"setenv update_filename ${update_uboot_filename} ; " \
"setenv update_offset 0x10000 ; " \
"run do_update_sf ; " \
"setenv update_mmc_part 1 ; " \
"setenv update_offset 0 ; " \
"run do_update_mmc\0" \
"update_kernel_filename=uImage\0" \
"update_kernel=" \
"setenv update_mmc_part 1 ; " \
"setenv update_filename ${update_kernel_filename} ; " \
"setenv update_offset 0x800 ; " \
"run do_update_mmc ; " \
"setenv update_filename ${dtbfile} ; " \
"setenv update_offset 0x400 ; " \
"run do_update_mmc\0" \
"update_sfkernel=" \
"setenv update_filename fitImage ; " \
"setenv update_offset ${sf_kernel_offset} ; " \
"run do_update_sf\0" \
"update_swu=" \
"setenv update_filename ${swufile} ; " \
"setenv update_offset ${sf_swu_offset} ; " \
"run do_update_sf\0" \
"addcons=" \
"setenv bootargs ${bootargs} " \
"console=${consdev},${baudrate}\0" \
"addip=" \
"setenv bootargs ${bootargs} " \
"ip=${ipaddr}:${serverip}:${gatewayip}:" \
"${netmask}:${hostname}:${netdev}:off\0" \
"addmisc=" \
"setenv bootargs ${bootargs} ${miscargs}\0" \
"addargs=run addcons addmisc\0" \
"mmcload=" \
"mmc rescan ; " \
"mmc dev 0 1 ; " \
"mmc read ${loadaddr} 0x800 0x2000 ; " \
"mmc read ${dtbaddr} 0x400 0x80\0" \
"netload=" \
"dhcp ${loadaddr} ${hostname}/${bootfile} ; " \
"tftp ${dtbaddr} ${hostname}/${dtbfile}\0" \
"sfload=" \
"sf probe ; " \
"sf read ${loadaddr} ${sf_kernel_offset} ${sf_kernel_size}\0" \
"usbload=" \
"usb start ; " \
"load usb 0:1 ${loadaddr} ${bootfile}\0" \
"miscargs=panic=1\0" \
"mmcargs=setenv bootargs root=${rootdev} rw rootwait\0" \
"nfsargs=" \
"setenv bootargs root=/dev/nfs rw " \
"nfsroot=${serverip}:${rootpath},v3,tcp\0" \
"mmc_mmc=" \
"if run mmcload mmcargs addargs ; then " \
"bootm ${loadaddr} - ${dtbaddr} ; " \
"fi\0" \
"mmc_nfs=" \
"if run mmcload nfsargs addip addargs ; then " \
"bootm ${loadaddr} - ${dtbaddr} ; " \
"fi\0" \
"sf_mmc=" \
"if run sfload mmcargs addargs ; then " \
"bootm ${loadaddr} - ${dtbaddr} ; " \
"fi\0" \
"sf_swu=" \
"if run sfload ; then " \
"sf read ${rdaddr} ${sf_swu_offset} ${sf_swu_size} ; " \
"setenv bootargs root=/dev/ram0 rw ; " \
"run addargs ; " \
"bootm ${loadaddr} ${rdaddr} ; " \
"fi\0" \
"net_mmc=" \
"if run netload mmcargs addargs ; then " \
"bootm ${loadaddr} - ${dtbaddr} ; " \
"fi\0" \
"net_nfs=" \
"if run netload nfsargs addip addargs ; then " \
"bootm ${loadaddr} - ${dtbaddr} ; " \
"fi\0" \
"prebootcmd=" \
"if test \"${envsaved}\" != y ; then ; " \
"setenv envsaved y ; " \
"saveenv ; " \
"fi ; " \
"if test \"${bootmode}\" = normal ; then " \
"setenv bootdelay 0 ; " \
"setenv bootpri mmc_mmc ; " \
"elif test \"${bootmode}\" = devel ; then " \
"setenv bootdelay 3 ; " \
"setenv bootpri net_mmc ; " \
"else " \
"if test \"${bootmode}\" != update ; then " \
"echo Warning: unknown bootmode \"${bootmode}\" ; " \
"fi ; " \
"setenv bootdelay 1 ; " \
"setenv bootpri sf_swu ; " \
"fi\0"
/* The rest of the configuration is shared */
#include <configs/mxs.h>