[PATCH PATCH v6 00/13] Add support for applications of overlays in SPL
Jean-Jacques Hiblot
jjhiblot at ti.com
Mon Dec 23 17:24:40 CET 2019
Tom, Simon,
gentle ping on this series. It has been posted for a long time and I did
not push for it because I was working on other stuff. am654x and J7x
SOCs will need this kind of feature.
Before sending a version rebased on latest u-boot, I would have liked to
have your feeling on the series as a whole.
JJ
On 22/10/2019 16:39, Jean-Jacques Hiblot wrote:
> The purpose of this series is to provide the SPL with ability to apply
> overlays for u-boot.
>
> Our use-case is the support of the daughter boards of the AM65x and J721e
> EVMs. In Linux, each board is supported by a unique overlay. The presence
> of the boards is detected at runtime, and some useful features (like USB)
> are implemented on those daughter boards. Instead of providing multiple
> dtbs and fall in a combinatorial pit, we propose to use DT overlays.
>
> On arm, if overlay are supported, this series increases the size of the SPL
> by 3.2 kB.
>
> Travis build : https://travis-ci.org/jjhiblot/u-boot/builds/600742163
>
> Changes in v6:
> - Instead of matching a overlay by the name of it's node. Try to match it
> first with the description, and then with the node's name. This allows
> to use makeimg to add the overlays to u-boot.img and not use a custom
> SPL_FIT_GENERATOR script
>
> Changes in v5:
> - Do not allocate the buffer if not needed (no overlay).
> - Add a Kconfig option for the buffer size
> - board_get_fit_loadable() returns an error code instead of a NULL string
> in case of failure
> -reword commit log
>
> Changes in v4:
> - use CONFIG_IS_ENABLED() instead of #idef
> - make sure that the temp buffer is freed in all cases
> - Use the board driver infrastructure to get the image names from the
> board code.
> - Remove a patch that passed the board name to the FIT generator. If needed
> the generator can get it from elsewhere
> - Add a fix to not load the firmware twice (once as a firmware and once as
> a loadable)
>
> Changes in v3:
> - Add a new config option: SPL_LOAD_FIT_APPLY_OVERLAY. By default, it is
> not selected.
> - removed the RFC prefix. This work will be needed soon by TI's AM65x
> platform. and can probably benefit other modular platforms
> - removed the last patch that provided an example of how to use this with
> on a DRA76.
> - removed the patch that made u-boot.img a symlink to u-boot.itb because
> it breaks the build of many platforms (because files required to build the
> ITB are missing)
> - removed the patch to reduce the footprint of the am335x SPL. (already
> merged)
> - Made the boot flow more permissive (don't fail immediately if an overlay
> is not present) and more verbose when an error occures
> - handle the dependencies of the FIT generation in a more generic way
> - use a dedicated kconfig option to enable the application of the overlays
> by the SPL.
>
> Changes in v2:
> - depend on SPL_DM
> - update the commit log
> - reworked board_fit_get_additionnal_images() and how it used in spl_fit.c
> - removed dtbo generation from dtso files and use .dts extension for the
> overlays
> - add dynamic allocation usage in a separate patch
> - defconfig change for the am335x_evm
>
> Jean-Jacques Hiblot (12):
> spl: fit: don't load the firmware twice
> spl: fit: Make room in the FDT before applying overlays
> spl: fit: allocate a temporary buffer to load the overlays
> spl: fit: Do not fail immediately if an overlay is not available
> spl: fit: be more verbose when an error occurs when applying the
> overlays
> Makefile.lib: include /__symbols__ in dtb if
> SPL_LOAD_FIT_APPLY_OVERLAY is enabled
> spl: fit: constify the output parameter of spl_fit_get_image_name()
> drivers: board: Make the board drivers available in SPL
> drivers: board: Add get_fit_loadable()
> include: board: provide empty stubs when the BOARD option is not
> selected
> dts: Add support for adding DT overlays in u-boot.img
> spl: fit: Allow the board to tell if more images must be loaded from
> FIT
>
> Michal Simek (1):
> spl: fit: Add support for applying DT overlay
>
> Kconfig | 18 +++++
> Makefile | 3 +-
> common/spl/spl_fit.c | 151 ++++++++++++++++++++++++++++++++---
> drivers/Makefile | 2 +-
> drivers/board/Kconfig | 3 +
> drivers/board/Makefile | 2 +-
> drivers/board/board-uclass.c | 11 +++
> dts/Kconfig | 8 ++
> include/board.h | 74 +++++++++++++++++
> scripts/Makefile.lib | 4 +
> 10 files changed, 263 insertions(+), 13 deletions(-)
>
More information about the U-Boot
mailing list