On Thu, Nov 18, 2021 at 09:09:44AM +1100, Mathew McBride wrote: > Hi Tom, > > On Fri, Nov 12, 2021, at 5:20 AM, Tom Rini wrote: > > On Wed, Nov 10, 2021 at 04:46:39AM +0000, Mathew McBride wrote: > > > > > Signed-off-by: Mathew McBride > > > --- > > > arch/arm/Kconfig | 16 ++ > > > arch/arm/dts/Makefile | 2 + > > > arch/arm/dts/fsl-ls1088a-ten64.dts | 377 +++++++++++++++++++++++++ > > > > What is the status of this dts with upstream Linux? > It's been in Linux since v5.15, though there is going to be some flux between U-Boot and Linux for a short while as some devices will be introduced into one or the other other first. > e.g traverse,ten64-controller does not and will not have a Linux (kernel) counterpart but I'll try and get it added to the dt yaml's for validation. > > (The upstream DTS intentionally left out some I2C devices that don't have Linux drivers or formal DT bindings yet) Bindings need to be upstreamed and reviewed, and the dts here kept in sync with the kernel, as it will be dropped in for updates. You also should at this point be able to get nodes (so long as there is a binding of course) that aren't strictly used in the kernel in the dts that's in the kernel. > > [snip] > > > > > > > +#define QSPI_NOR_BOOTCOMMAND "run distro_bootcmd" > > > +#define SD_BOOTCOMMAND "run distro_bootcmd" > > > > You should just set CONFIG_USE_BOOTCOMMAND and then CONFIG_BOOTCOMMAND > > will be "run distro_bootcmd". Thanks! > This actually comes about from fsl_setenv_bootcmd: > https://elixir.bootlin.com/u-boot/latest/source/arch/arm/cpu/armv8/fsl-layerscape/soc.c#L800 > Which gets hooked into board_late_init > https://elixir.bootlin.com/u-boot/latest/source/arch/arm/cpu/armv8/fsl-layerscape/soc.c#L961 > > The main reason I understand that exists is because the secure boot (FSL trust architecture) setup differs a depending on where the board has booted from: > https://elixir.bootlin.com/u-boot/latest/source/include/configs/ls1088ardb.h#L448 > (There is also a similar issue with mcinitcmd which does affect us) > > Since trust architecture isn't supported on our board yet, it just collapses down to "run distro_bootcmd" regardless of where the board started from. > > I guess this behaviour could be hidden behind a Kconfig so it's opt-in? Thanks for explaining. That's...interesting. And something that might be able to be cleaned up a bit in -next now that we've added some more flexibility to how environment is constructed at build time. But, not a job for someone submitting a board that follows the best practices of the rest of the family, even if those best practices aren't always so great. -- Tom