From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexandru Gagniuc Date: Wed, 20 Jan 2021 10:46:48 -0600 Subject: [PATCH v4 0/8] spl: fit: Play nicely with OP-TEE and Linux Message-ID: <20210120164656.1396639-1-mr.nuke.me@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de The purpose of this series is to allow SPL to boot an image with both OP-TEE and Linux. The "simple" fit code was mostly ready for this, albeit quite unreadable. To be able to make these changes reviewable, some major refactoring had to be done. In fact, of the eight changes, (6) are refactoring patches, and (2) are functional changes. I wish I could have written this with a negative line count. I have unfortunately failed at that, and this series will be adding 5 lines to u-boot. The takeaway is that the following type FIT can be loaded from SPL directly: images { optee at 1 { type = "tee"; os = "tee"; ... }; kernel at 1 { type = "kernel"; os = "linux"; ... }; fdt at devicetree.dtb { ... } fdt at overlay.dto { ... }; }; configurations { conf at quickboot { kernel = "optee at 1"; fdt = "fdt at stm32mp157c-ev1.dtb", "fdt at overlay.dto"; loadables = "kernel at 1"; }; }; Changes since v2: * Fix copmiler error for IMX spl.c Changes since v2: * Fixed embarrasing rebase mishap on one of the patches. Changes since v1: * Added struct comments (Simon Glass) * Added comment do describe args of board_spl_fit_post_load() (Simon Glass) * Fixed predicate of if clause on spl_load_simple_fit() (me) Alexandru Gagniuc (8): spl: fit: Drop 'length' argument to board_spl_fit_post_load() spl: fit: Factor out FIT parsing and use a context struct spl: fit: Pass FIT context via a structure pointer spl: fit: Remove useless loop in spl_fit_get_image_name() spl: fit: Only look up FIT configuration node once image: Do not #if guard board_fit_image_post_process() prototype spl: fit: Replace #ifdef blocks with more readable constructs spl: fit: Load devicetree when a Linux payload is found arch/arm/mach-imx/spl.c | 7 +- common/spl/spl_fit.c | 261 +++++++++++++++++++++------------------- include/image.h | 7 -- include/spl.h | 4 +- 4 files changed, 142 insertions(+), 137 deletions(-) -- 2.26.2