On Sat, 26 Jun 2021 at 13:23, Marek Vasut <ma...@denx.de> wrote: > > On 6/26/21 8:31 PM, Simon Glass wrote: > > Hi, > > > > On Thu, 10 Jun 2021 at 20:10, Marek Vasut <ma...@denx.de> wrote: > >> > >> The current fitImage DTO implementation expects each fitImage image > >> subnode containing DTO to have 'load' property, pointing somewhere > >> into memory where the DTO will be loaded. The address in the 'load' > >> property must be different then the base DT load address and there > >> must be sufficient amount of space between those two addresses. > >> Selecting and using such hard-coded addresses is fragile, error > >> prone and difficult to port even across devices with the same SoC > >> and different DRAM sizes. > >> > >> The DTO cannot be applied in-place because fdt_overlay_apply_verbose() > >> modifies the DTO when applying it onto the base DT, so if the DTO was > >> used in place within the fitImage, call to fdt_overlay_apply_verbose() > >> would corrupt the fitImage. > >> > >> Instead of copying the DTO to a specific hard-coded load address, > >> allocate a buffer, copy the DTO into that buffer, apply the DTO onto > >> the base DT, and free the buffer. > >> > >> The upside of this approach is that it is no longer necessary to > >> select and hard-code specific DTO load address into the DTO. The > >> slight downside is the new malloc()/free() overhead for each DTO, > >> but that is negligible (*). > >> > >> (*) on iMX8MM/MN and STM32MP1 > >> > >> Signed-off-by: Marek Vasut <ma...@denx.de> > >> Cc: Pantelis Antoniou <pantelis.anton...@konsulko.com> > >> Cc: Simon Glass <s...@chromium.org> > >> Cc: Tom Rini <tr...@konsulko.com> > >> --- > >> common/image-fit.c | 31 +++++++++++++++++++++++++++---- > >> 1 file changed, 27 insertions(+), 4 deletions(-) > >> > > > > Is this tested by the existing overlay test, or do we need something new? > > Overlay test should be sufficient.
Reviewed-by: Simon Glass <s...@chromium.org>