Hi Tom,

On Tue, 24 Feb 2026 at 09:13, Tom Rini <[email protected]> wrote:
>
> On Tue, Feb 24, 2026 at 07:25:42AM -0700, Simon Glass wrote:
>
> > Each arch does something slightly different before booting the OS. Some
> > archs even do different things depending on the CPU type.
> >
> > It is quite hard to know what actually happens in the final milliseconds
> > before the OS boot.
> >
> > This series attempts to start cleaning up U-Boot in this area.
> >
> > The basic intent is to create a new bootm_final() function which can be
> > called by all archs. It provides some flags for a couple of necessary
> > variations but otherwise it is generic.
> >
> > RISC-V, x86 and ARM are converted over to use this new function. For
> > consistency, EFI loader is converted as well.
>
> Please include all architectures in v3, ARM is still not shown in this
> series.
>
> > A noteable change is that EFI_LOADER now does bootstage processing
> > before boot, if enabled, thus producing a report.
> >
> > There is also a patch to drop EFI_GRUB_ARM32_WORKAROUND, as discussed
> > recently on the mailing list.
> >
> > Future work could take this a little further:
> > - Drop board_quiesce_devices() and rely on driver model for that
>
> Potentially, but there's non-trivial uses that don't fit in driver model
> today either.
>
> > - Similarly with udc_disconnect()
>
> Please look at mainline code again.
>
> > - Look at converting EFI to use the same function
>
> You said a few lines above EFI was converted? Please make sure your
> cover letter is consistent and correct in v3.
>
> > Also, the comment for cleanup_before_linux() could use more details as
> > to what it is supposed to do, to reduce the number of arch-specific
> > variations. It currently does different things on differents archs and
> > is mostly uncommented (apart from an ARM-specific note in a README).
> > Ideally it would be commented with exactly what it should do, ideally
> > at a high level so it is not just arch-specific.
> >
> > While some of these arch-specific differences are necessary, some are
> > just due to the changes to code over time.
>
> This is due to the entry requirements for Linux being architecture
> specific. This is more consistent than it was 15 years ago (especially
> since RISC-V looked at arm64 and copy/pasted as much as they could,
> which is a good thing!) but still an inherently architecture-specific
> thing, so yes, we may only end up with limited overlap.

Just to pick up on this point, yes different Linux interfaces are
needed, but that is not the target of this series. I am more talking
about the differences which are either unintended, or just a rusult of
there being more development on some archs than others.

Regards,
Simon

Reply via email to