Skip to content
Snippets Groups Projects
Commit b7d5b4a9 authored by Frieder Schrempf's avatar Frieder Schrempf
Browse files

fixup! WIP: mx6ul features, swupdate, U-Boot env, ...

parent 68e54f7f
No related branches found
No related tags found
No related merge requests found
......@@ -88,40 +88,7 @@
* ### ENVIRONMENT ###
* #######################################
*/
#if !defined(CONFIG_BOOTCOUNT_LIMIT) && !defined(CONFIG_ENV_IS_NOWHERE)
/*
* Bootconfig with extlinux/distro-bootcmd
*/
#define CONFIG_EXTRA_ENV_SETTINGS \
"bootargs_base=" KONTRON_ENV_KERNEL_MTDPARTS " " \
KONTRON_ENV_KERNEL_CONSOLE "\0" \
"script=boot.scr\0" \
"fdt_high=0xffffffff\0" \
"initrd_high=0xffffffff\0" \
"kernel_addr_r=" KONTRON_ENV_KERNEL_ADDR "\0" \
"fdt_addr_r=" KONTRON_ENV_FDT_ADDR "\0" \
"ramdisk_addr_r=" KONTRON_ENV_RAMDISK_ADDR "\0" \
"pxefile_addr_r=" KONTRON_ENV_PXE_ADDR "\0" \
"scriptaddr=" KONTRON_ENV_PXE_ADDR "\0" \
"bootdir=\0" \
"bootdelay=3\0" \
"ipaddr=192.168.1.11\0" \
"serverip=192.168.1.10\0" \
"gatewayip=192.168.1.10\0" \
"netmask=255.255.255.0\0" \
"ethact=" CONFIG_ETHPRIME "\0" \
"hostname=" CONFIG_HOSTNAME "\0" \
"bootubipart=spi-nand0\0" \
"bootubivol=boot\0" \
BOOTENV
#else
/*
* Bootconfig without extlinux/distro-bootcmd
*/
#define CONFIG_EXTRA_ENV_SETTINGS \
#define CONFIG_EXTRA_ENV_SETTINGS_STANDARD \
"boot_targets=" KONTRON_ENV_BOOT_DEVICES "\0" \
"fdt_high=0xffffffff\0" \
"initrd_high=0xffffffff\0" \
......@@ -143,70 +110,123 @@
"mtdparts=" CONFIG_MTDPARTS_DEFAULT"\0" \
"mtdids=" CONFIG_MTDIDS_DEFAULT "\0" \
"boot_prefixes=/ /boot/\0" \
"fiti_name=fitImage\0" \
"fallback_active=0\0"\
"active_part_file=sys_active \0" \
"bootargs_base=" KONTRON_ENV_KERNEL_CONSOLE " " \
KONTRON_ENV_KERNEL_MTDPARTS "\0" \
"bootargs_prepend_mmc=" KONTRON_ENV_BOOTARGS_MMC "\0" \
"bootargs_prepend_A=" KONTRON_ENV_BOOTARGS_A "\0" \
"bootargs_prepend_B=" KONTRON_ENV_BOOTARGS_B "\0" \
#if !defined(FIT_SIGNATURE)
/*
* Env for search and load of additional environment file
* u-boot.txt in boot targets
*/
#define LOAD_EXTRA_ENV_FILE \
"for target in ${boot_targets}; do "\
"echo searching for u-boot.txt in $target;" \
"run load_extra_env_${target};" \
"done;" \
"echo No u-boot.txt found;"
#define LOAD_EXTRA_ENV_ENV \
"extra_env_file=u-boot.txt\0" \
"load_extra_env_mmc0=setenv devnum 0;setenv devpart 1; " \
"run mmc0_env_load;\0" \
"load_extra_env_mmc1=setenv devnum 1;setenv devpart 1; " \
"run mmc1_env_load;\0" \
"load_extra_env_ubifs=run ubi_env_load;\0" \
\
"bootcmd_mmc0= setenv devnum 0;run mmc_boot \0" \
"bootcmd_mmc1= setenv devnum 1;run mmc_boot \0" \
"extra_env_cmd=echo no extra env command\0" \
\
"mmc_boot=" \
"setenv bootargs ${bootargs_prepend_mmc} ${bootargs_base};" \
"if fatload mmc ${devnum}:1 $loadaddr ${fiti_name};then " \
"bootm $loadaddr;" \
"fi\0" \
"import_and_load_env="\
"env import -t $loadaddr $filesize;" \
"run extra_env_cmd;\0" \
\
"determine_ubi_bootargs=" \
"if test $fallback_active = 0;then " \
"echo Normal active boot ; " \
"setenv fiti_name ${fiti_name}_active; " \
"if itest.b *${loadaddr} == 41;then " \
"setenv bootargs ${bootargs_prepend_A} ${bootargs_base};" \
"echo using rootfs partition ${bootargs_prepend_A};" \
"else " \
"setenv bootargs ${bootargs_prepend_B} ${bootargs_base};" \
"echo using rootfs partition ${bootargs_prepend_B};" \
"fi;" \
"else "\
"echo fallback boot to inactive system ; " \
"setenv fiti_name ${fiti_name}_inactive; " \
"if itest.b *$loadaddr == 41;then " \
" setenv bootargs ${bootargs_prepend_B} ${bootargs_base};" \
"echo using rootfs partition ${bootargs_prepend_B};" \
"else " \
" setenv bootargs ${bootargs_prepend_A} ${bootargs_base};" \
"echo using rootfs partition ${bootargs_prepend_A};" \
"fi; " \
"fi;\0" \
"mmc0_env_load=" \
"if fatload mmc ${devnum}:${devpart} $loadaddr ${extra_env_file};then " \
"run import_and_load_env" \
"run mmc0_boot;" \
"fi;\0" \
\
"bootcmd_ubifs="\
"if ubi part ubi || ubi part UBI ;then " \
"ubifsmount ubi0:boot; " \
\
"if ubifsload $loadaddr ${active_part_file} 1;then " \
"run determine_ubi_bootargs;" \
"ubifsload $loadaddr $fiti_name; " \
"bootm $loadaddr; " \
"else " \
"echo -----------------------; "\
"echo no partition file found ;" \
"echo aborting boot and reset; "\
"echo -----------------------; "\
"reset ; " \
"fi;" \
"mmc1_env_load=" \
"if ext4load mmc ${devnum}:${devpart} $loadaddr ${extra_env_file};then " \
"run import_and_load_env" \
"run mmc0_boot;" \
"fi;\0" \
\
"altbootcmd= setenv fallback_active 1;run distro_bootcmd\0" \
"distro_bootcmd=" \
"for target in ${boot_targets}; do " \
"run bootcmd_${target}; " \
"done\0"
#endif
"ubi_env_load=" \
"if ubi part ${bootubipart} || ubi part UBI ;then " \
"ubifsmount ubi0:${bootubivol}; " \
\
"if ubifsload $loadaddr ${extra_env_file} ;then " \
"run import_and_load_env" \
"run bootcmd_ubifs;" \
"fi;" \
"fi;\0"
#else /*secure boot case*/
#define LOAD_EXTRA_ENV_FILE \
";"
#define LOAD_EXTRA_ENV_ENV \
";"
#endif /*END if !defined(FIT_SIGNATURE)*/
#define CONFIG_EXTRA_ENV_BASIC_FALLBACK \
"fallback_active=0\0" \
"active_part_file=sys_active \0" \
"fiti_config=\0" \
"image=fitImage\0" \
"altbootcmd=setenv fallback_active 1; run distro_bootcmd\0" \
"bootargs_base=" KONTRON_ENV_KERNEL_CONSOLE " " \
CONFIG_MTDPARTS_DEFAULT "\0" \
"determine_bootargs=" \
"if test ${fallback_active} == 0; then " \
"echo 'Normal boot from active system...'; " \
"setenv image ${image}_active; " \
"setenv bootargs " KONTRON_ENV_BOOTARGS_B " ${bootargs_base};" \
"echo using rootfs partition ${bootargs_prepend_B};" \
"else "\
"echo 'Fallback to boot from inactive system'; " \
"setenv image ${image}_inactive; " \
"setenv bootargs" KONTRON_ENV_BOOTARGS_A " ${bootargs_base};" \
"echo using rootfs partition " KONTRON_ENV_BOOTARGS_A \
"fi;\0" \
"bootcmd_mmc0= setenv devnum 0;setenv devpart 1;run mmc0_boot \0" \
"mmc0_boot=" \
"setenv bootargs " KONTRON_ENV_BOOTARGS_MMC0 " ${bootargs_base};" \
"if fatload mmc ${devnum}:${devpart} $loadaddr ${fiti_name};then " \
"bootm ${loadaddr}${fiti_config};" \
"fi\0"
#define CONFIG_EXTRA_ENV_SETTINGS \
CONFIG_EXTRA_ENV_SETTINGS_STANDARD \
LOAD_EXTRA_ENV_ENV \
CONFIG_EXTRA_ENV_BASIC_FALLBACK \
"bootargs_prepend_mmc_1=" KONTRON_ENV_BOOTARGS_MMC1 "\0" \
"bootcmd_mmc1= setenv devnum 1;setenv devpart 1;run mmc1_boot \0" \
"mmc1_boot=" \
"setenv bootargs ${bootargs_prepend_mmc_1} ${bootargs_base};" \
"if ext4load mmc ${devnum}:${devpart} $loadaddr ${fiti_name};then " \
"bootm ${loadaddr}${fiti_config};" \
"fi\0" \
"bootcmd_ubifs="\
"if ubi part ubi || ubi part UBI ;then " \
"ubifsmount ubi0:boot; " \
\
"if ubifsload $loadaddr ${active_part_file} 1;then " \
"run determine_bootargs;" \
"ubifsload $loadaddr $fiti_name; " \
"bootm ${loadaddr}${fiti_config}; " \
"else " \
"echo ----------------------- ;"\
"echo no partition file found ;"\
"echo aborting boot and reset ;"\
"echo ----------------------- ;"\
"reset ; " \
"fi;" \
"fi;\0" \
"distro_bootcmd="\
LOAD_EXTRA_ENV_FILE \
"for target in ${boot_targets}; do " \
"run bootcmd_${target}; " \
"done;" \
"reset; \0"
#endif /* __KONTRON_COMMON_CONFIG_H */
......@@ -12,7 +12,8 @@
#define CONFIG_HOSTNAME "kontron-mx6ul"
#define KONTRON_ENV_KERNEL_CONSOLE "rootwait console=ttymxc3,115200"
#define KONTRON_ENV_BOOTARGS_MMC "root=/dev/mmcblk0p2"
#define KONTRON_ENV_BOOTARGS_MMC0 "root=/dev/mmcblk0p2"
#define KONTRON_ENV_BOOTARGS_MMC1 "root=/dev/mmcblk1p2"
#define KONTRON_ENV_BOOTARGS_A "root=ubi0:root_A"
#define KONTRON_ENV_BOOTARGS_B "root=ubi0:root_B"
#define KONTRON_ENV_BOOT_DEVICES "mmc0 ubifs mmc1"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment