
Hello Markus,
Am 15.04.2019 um 17:32 schrieb Markus Klotzbuecher:
From: Markus Klotzbuecher markus.klotzbuecher@kistler.com
Hello Heiko and Kyungmin
This series contains a couple of UBI and UBI SPL improvements, notably a ubispl extension to allow loading volumes by name. The motivation is to use the UBI atomic volume rename functionality to allow double copy software updates of U-Boot on UBI. To do that we configured the SPL to always load the same volume name (e.g. "u-boot"), and the software updater always installs into the secondary volume "u-boot_r". After a successful upgrade, these two volume names are switched.
Ok ... Hmm... if you use the bootcounter in SPL, you may have a chance to unbreak he board, if "u-boot" does not boot?
How do you detect a successfull upgrade ?
This extension is protected by #ifdefs as it will somewhat slow down loading of volumes by id. This is because the code needs to disable the optimization of ignoring all volume ids which are not to-be-loaded, since these can only be resolved after attaching.
We have tested both with and without fastmap enabled and both paths seems to work reliably.
Fine, thanks!
I also moved the ubispl config to Kconfig. There seem to be two boards
Thanks!
that use this (Maintainers cc'ed on patch). I have not updated their defconfigs (not being sure if I should) but would be pleased to do so.
I prefer that you do so, but we will see, if the board maintainers give some feedback.
Give me some time to look through your patches.
bye, Heiko
Hamish Guthrie (2): env: ubi: support configurable VID offset ubispl: add support for loading volumes by name
Markus Klotzbuecher (4): env: ubi: KConfig: add CONFIG_ENV_UBI_VOLUME_REDUND ubi: fix UBI_SILENCE_MSG ubispl: migrate configuration to Kconfig ubispl: introduce separate CONFIG_UBI_SPL_SILENCE_MSG
common/spl/Kconfig | 98 ++++++++++++++++ common/spl/spl_ubi.c | 7 ++ drivers/mtd/ubi/Kconfig | 2 +- drivers/mtd/ubi/io.c | 2 + drivers/mtd/ubispl/ubispl.c | 215 ++++++++++++++++++++++++++++++++++- drivers/mtd/ubispl/ubispl.h | 9 +- env/Kconfig | 12 ++ env/ubi.c | 17 ++- include/ubispl.h | 6 + scripts/config_whitelist.txt | 13 --- 10 files changed, 360 insertions(+), 21 deletions(-)