[PATCH v2] board_f: Add support for CONFIG_OF_BOARD_FIXUP for XIP images

Pali Rohár pali at kernel.org
Wed Nov 2 00:23:03 CET 2022


On Monday 10 October 2022 17:48:58 Simon Glass wrote:
> Hi,
> 
> On Sun, 28 Aug 2022 at 09:19, Marek Behún <kabel at kernel.org> wrote:
> >
> > From: Pali Rohár <pali at kernel.org>
> >
> > When U-Boot is running from flash memory (execute in place) then
> > gd->fdt_blob before relocation points to read-only flash memory.
> >
> > So U-Boot calls board_fix_fdt() with read-only gd->fdt_blob pointer which
> > cause immediate CPU crash when callback is trying to modify gd->fdt_blob.
> >
> > Fix this issue by introducing a new config option
> > OF_DTB_READONLY_BEFORE_RELOC which moves fix_fdt callback after the
> > reloc_fdt callback. This makes CONFIG_OF_BOARD_FIXUP working also if
> > U-Boot before relocation is not running from read/write (S)RAM memory.
> >
> > This is required for mpc85xx boards when booting from flash NOR.
> >
> > Signed-off-by: Pali Rohár <pali at kernel.org>
> > Signed-off-by: Marek Behún <kabel at kernel.org>
> > ---
> > Changes since v1:
> > - just changed the new Kconfig option name and associated help string
> > ---
> >  common/board_f.c | 8 +++++++-
> >  dts/Kconfig      | 6 ++++++
> >  2 files changed, 13 insertions(+), 1 deletion(-)
> 
> Can we just make this the normal behaviour? I think it makes more
> sense to change the FDT after we have relocated it.
> 
> Regards,
> Simon

Marek? Any comments?


More information about the U-Boot mailing list