I’m trying to test update of raspberrypi cm3 module to zeus branch. I’m hitting following issues:
u-boot -> do_configure task is in loop:
make -f /home/jenkins/mender/mender-raspberrypi/build/tmp/work/raspberrypi_cm3-poky-linux-gnueabi/u-boot/1_2020.01-r0/git/scripts/Makefile.build obj=scripts/kconfig oldconfig
scripts/kconfig/conf --oldconfig Kconfig
.config:178:warning: symbol value '' invalid for ENV_OFFSET
*
* Restart config...
*
*
* Environment
*
Environment is not stored (ENV_IS_NOWHERE) [N/y/?] n
Environment in EEPROM (ENV_IS_IN_EEPROM) [N/y/?] n
Environment is in a FAT filesystem (ENV_IS_IN_FAT) [N/y/?] n
Environment is in a EXT4 filesystem (ENV_IS_IN_EXT4) [N/y/?] n
Environment in flash memory (ENV_IS_IN_FLASH) [N/y/?] n
Environment in an MMC device (ENV_IS_IN_MMC) [Y/n/?] y
Environment in a NAND device (ENV_IS_IN_NAND) [N/y/?] n
Environment in a non-volatile RAM (ENV_IS_IN_NVRAM) [N/y/?] n
Environment is in OneNAND (ENV_IS_IN_ONENAND) [N/y/?] n
Environment is in remote memory space (ENV_IS_IN_REMOTE) [N/y/?] n
Enable redundant environment support (SYS_REDUNDAND_ENVIRONMENT) [N/y/?] n
Environment offset (ENV_OFFSET) [] (NEW)
Environment offset (ENV_OFFSET) [] (NEW)
Environment offset (ENV_OFFSET) [] (NEW)
Environment offset (ENV_OFFSET) [] (NEW)
Environment offset (ENV_OFFSET) [] (NEW)
Environment offset (ENV_OFFSET) [] (NEW)
Environment offset (ENV_OFFSET) [] (NEW)
Environment offset (ENV_OFFSET) [] (NEW)
meta-mender-core layer are patches for u-boot-2020.01 but meta-raspberrypi use 2019.07version . When try to set this version as preferred patches cannot be applied (rpi related). I refreshed u-boot patch (will post PR when verify board booting).
When I compile for Raspberry Pi it looks like it uses 2020.01, even though 2019.07 is the one available in the meta-raspberrypi layer. I suppose it just chooses the latest one, which is the one from poky.
Can you confirm that the same thing happens to you? I would not expect the original error that you encountered unless 2020.01 is being used.
I know we added 2020.01 U-Boot recipe to fix U-Boot → GRUB support (Beaglebone and others) and I thought the intention was to use this as the default bootloader for other platforms that rely on upstream U-Boot as well and I have deferred to comment on this earlier.
Raspberry Pi is a bit special, since it does not use the U-Boot → GRUB approach, but it is using upstream U-Boot. We could force the Raspberry Pi integration to use 2019.07, since it is a “manual integration” and not impacted by the breakage/fixes of U-Boot → GRUB.
But you have already updated the patches to 2020.01 for Raspberry Pi, so might as well stick to it?
Good catch @mirzak, I had forgotten about that. I checked the dunfell branch of meta-raspberrypi, which uses U-Boot v2020.01, and it has no patches, so I assume they have all been applied to v2020.01 already.
So yes, I think we should just stick to v2020.01, at least if @MarekBelisko can confirm that this works for him.
47 | # error CONFIG_ENV_OFFSET should not be defined explicitly (will be auto-configured).
| ^~~~~
u-boot/1_2020.01-r0/git/include/config_mender.h:50:3: error: #error CONFIG_ENV_OFFSET_REDUND should not be defined explicitly (wi
ll be auto-configured).
u-boot autoconfig is disabled and I have added MENDER_PARTITION_ALIGNMENT = "4194304"
When removed then getting other error:
ERROR: u-boot-1_2020.01-r0 do_configure: U-Boot configuration rpi_3_32b_config has setting:
CONFIG_ENV_OFFSET=0x400000
CONFIG_ENV_OFFSET_REDUND=0x800000
but Mender expects:
CONFIG_ENV_OFFSET=0x800000
Please fix U-Boot's configuration file.