From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jean-Jacques Hiblot Date: Wed, 27 Mar 2019 18:41:08 +0100 Subject: [U-Boot] [RFC PATCH v1 0/9] Add support for applications of overlays in SPL In-Reply-To: <20190327103937.3e8fbeb6@jawa> References: <20190322143956.14767-1-jjhiblot@ti.com> <20190327103937.3e8fbeb6@jawa> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 27/03/2019 10:39, Lukasz Majewski wrote: > Hi Jean-Jacques, > >> The purpose of this series is to provide the SPL with ability to apply >> overlays for u-boot. this is only a RFC so far, to get a feedback on >> the approach. >> >> 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. >> >> The first 4 patches are small fixes/improvement related to the build. >> Patch #5 may be a bit controversial. It basically replaces u-boot.img >> with a symlink to u-boot.itb in case we use a "complex" FIT (ie: if >> SPL_FIT_SOURCE or SPL_FIT_GENERATOR are set) >> >> Patch #6 and #7 are the core support for DTB application in the SPL. >> Based on a patch posted by Michal Simek a few weeks ago. The list of >> overlays is read from the "fdt" of the configuration chosen in the >> ITB (same property as for the DTB): >> configurations { >> default = "conf-1"; >> conf-1 { >> description = "dra76-evm"; >> firmware = "firmware-1"; >> fdt = "fdt-1", "overlay-1"; >> }; >> } >> >> >> Patch #8 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-level code tells what overlay it needs (it gives >> the name of the node). >> >> Patch #9 is not required, but demonstrates on a DRA76-evm how this >> series can be used. >> >> >> Jean-Jacques Hiblot (8): >> dtbo: also generate dtbo from dtso >> Makefile.lib: include /__symbols__ in dtb if OF_LIBFDT_OVERLAY is >> enabled >> Makefile: Fix u-boot.itb generation when building outside the source >> tree >> Makefile: Pass the board name to the FIT generator scripts >> Makefile: use custom ITS to build u-boot.img if SPL_FIT_SOURCE or >> SPL_FIT_GENERATOR are set >> spl: fit: Allow calling spl_load_fit_image() to only get the image >> size >> sp: fit: Allow the board to dynamically select the DTB overlays it >> needs. >> !!! TEMP !!! For demonstration only !!! DRA76: Usage of overlays in >> SPL >> >> Michal Simek (1): >> spl: fit: Add support for applying DT overlay > Just out of curiosity - what is the difference in SPL footprint when > with and without this feature? For the dra76-evm, the diff in SPL size is 3.3kB JJ > >> Makefile | 20 ++- >> arch/arm/dts/Makefile | 2 +- >> arch/arm/dts/dra76-evm-dummy.dtso | 14 +++ >> arch/arm/dts/dra76-evm-dummy2.dtso | 15 +++ >> arch/arm/mach-imx/mkimage_fit_atf.sh | 3 +- >> arch/arm/mach-rockchip/make_fit_atf.py | 5 +- >> .../lion_rk3368/fit_spl_atf.its | 6 +- >> .../puma_rk3399/fit_spl_atf.its | 8 +- >> board/ti/dra7xx/evm.c | 30 +++++ >> board/ti/dra7xx/evm.its | 48 ++++++++ >> common/spl/spl_fit.c | 114 >> +++++++++++++++++- configs/dra7xx_evm_defconfig | >> 2 + include/spl.h | 20 +++ >> scripts/Makefile.lib | 7 ++ >> 14 files changed, 273 insertions(+), 21 deletions(-) >> create mode 100644 arch/arm/dts/dra76-evm-dummy.dtso >> create mode 100644 arch/arm/dts/dra76-evm-dummy2.dtso >> create mode 100644 board/ti/dra7xx/evm.its >> > > > > Best regards, > > Lukasz Majewski > > -- > > DENX Software Engineering GmbH, Managing Director: Wolfgang Denk > HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany > Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma at denx.de