From: Jean-Jacques Hiblot <jjhiblot@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v5 00/15] Add support for applications of overlays in SPL
Date: Fri, 20 Sep 2019 17:28:08 +0200 [thread overview]
Message-ID: <20190920152824.18958-1-jjhiblot@ti.com> (raw)
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 EVM. 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.
Patch #2 "spl: fit: Add support for applying DT overlay" has been posted
a few weeks ago by Michal Simek.
Patch #3 to #6 amend Michal's patch.
Patch #7 to #9 are simple fixes for the Makefile
Patch #10 is used to reduce the complexity of the Makefile by having FIT
generator scripts provide their dependencies
Patch #12-#13 allow to use the board driver in SPL
Patch #14-#15 adds a way to dynamically select the DT overlays. That is
were we would use HW detection to select the required overlays. In that
case, the board driver code tells what overlay it needs (it gives the
name of the node).
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/567779404
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 some commit logs
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 (14):
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
Makefile: Fix tests for CONFIG_SPL_LOAD_FIT and
CONFIG_SPL_FIT_GENERATOR
Makefile: Fix u-boot.itb generation when building outside the source
tree
Makefile: Query the SPL Fit Generator for its dependencies
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
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 | 23 ++--
arch/arm/mach-imx/mkimage_fit_atf.sh | 5 +
arch/arm/mach-rockchip/make_fit_atf.py | 7 ++
board/sunxi/mksunxi_fit_atf.sh | 4 +
.../lion_rk3368/fit_spl_atf.its | 6 +-
.../puma_rk3399/fit_spl_atf.sh | 6 +
common/spl/spl_fit.c | 113 ++++++++++++++++--
drivers/Makefile | 2 +-
drivers/board/Kconfig | 3 +
drivers/board/Makefile | 2 +-
drivers/board/board-uclass.c | 11 ++
include/board.h | 74 ++++++++++++
scripts/Makefile.lib | 4 +
14 files changed, 251 insertions(+), 27 deletions(-)
--
2.17.1
next reply other threads:[~2019-09-20 15:28 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-20 15:28 Jean-Jacques Hiblot [this message]
2019-09-20 15:28 ` [U-Boot] [PATCH v5 01/15] spl: fit: don't load the firmware twice Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 02/15] spl: fit: Add support for applying DT overlay Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 03/15] spl: fit: Make room in the FDT before applying overlays Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 04/15] spl: fit: allocate a temporary buffer to load the overlays Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 05/15] spl: fit: Do not fail immediately if an overlay is not available Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 06/15] spl: fit: be more verbose when an error occurs when applying the overlays Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 07/15] Makefile.lib: include /__symbols__ in dtb if SPL_LOAD_FIT_APPLY_OVERLAY is enabled Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 08/15] Makefile: Fix tests for CONFIG_SPL_LOAD_FIT and CONFIG_SPL_FIT_GENERATOR Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 09/15] Makefile: Fix u-boot.itb generation when building outside the source tree Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 10/15] Makefile: Query the SPL Fit Generator for its dependencies Jean-Jacques Hiblot
2019-10-06 16:57 ` Auer, Lukas
2019-10-06 17:12 ` Tom Rini
2019-10-07 9:43 ` Jean-Jacques Hiblot
2019-10-07 16:02 ` Tom Rini
2019-10-09 10:10 ` Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 11/15] spl: fit: constify the output parameter of spl_fit_get_image_name() Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 12/15] drivers: board: Make the board drivers available in SPL Jean-Jacques Hiblot
2019-10-11 22:21 ` Simon Glass
2019-09-20 15:28 ` [U-Boot] [PATCH v5 13/15] drivers: board: Add get_fit_loadable() Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 14/15] include: board: provide empty stubs when the BOARD option is not selected Jean-Jacques Hiblot
2019-09-20 15:28 ` [U-Boot] [PATCH v5 15/15] spl: fit: Allow the board to tell if more images must be loaded from FIT Jean-Jacques Hiblot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190920152824.18958-1-jjhiblot@ti.com \
--to=jjhiblot@ti.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.