[PATCH 2/2] bootstage: Do not sort records
Simon Glass
sjg at chromium.org
Wed Aug 28 18:01:35 CEST 2024
Hi Jonas,
On Tue, 6 Aug 2024 at 15:50, Simon Glass <sjg at chromium.org> wrote:
>
> Hi Jonas,
>
> On Sat, 3 Aug 2024 at 06:42, Jonas Karlman <jonas at kwiboo.se> wrote:
> >
> > The timer counter on Rockchip SoCs may be reset in TF-A, this may cause
> > the bootstage records to be printed out of order and with an incorrect
> > elapsed time.
>
> Eek can we just fix TF-A? That seems like a bug.
>
> >
> > Fix this by not sorting the bootstage records.
> >
> > Before on a Radxa ZERO 3W (RK3566) board:
> >
> > => bootstage report
> > Timer summary in microseconds (12 records):
> > Mark Elapsed Stage
> > 0 0 reset
> > 7,436 7,436 board_init_f
> > 164,826 157,390 SPL
> > 375,392 210,566 end phase
> > 423,909 48,517 board_init_r
> > 472,973 49,064 eth_common_init
> > 476,848 3,875 main_loop
> > 477,003 155 cli_loop
> >
> > Accumulated time:
> > 7,181 of_live
> > 14,739 dm_spl
> > 15,029 dm_r
> > 315,150 dm_f
> >
> > With this the records can be printed in chronological order when the
> > counter is reset and SPL and board_init_r records show correct elapsed
> > time.
> >
> > => bootstage report
> > Timer summary in microseconds (12 records):
> > Mark Elapsed Stage
> > 0 0 reset
> > 164,437 164,437 SPL
> > 375,023 210,586 end phase
> > 7,437 7,437 board_init_f
> > 424,390 416,953 board_init_r
> > 473,515 49,125 eth_common_init
> > 477,402 3,887 main_loop
> > 477,571 169 cli_loop
> >
> > Accumulated time:
> > 14,734 dm_spl
> > 315,646 dm_f
> > 7,339 of_live
> > 14,977 dm_r
> >
> > For the tested board external TPL and BROM take ~164 ms to initialize
> > DRAM and load SPL, SPL take ~210ms to load images from FIT and U-Boot
> > proper take ~477ms to reach cli prompt.
> >
> > Signed-off-by: Jonas Karlman <jonas at kwiboo.se>
> > ---
> > common/bootstage.c | 12 ++----------
> > 1 file changed, 2 insertions(+), 10 deletions(-)
> >
To put this more strongly, this breaks the timing output on other boards.
At the very least, this should be Kconfig option just enabled for
boards with a broken ATF.
Regards,
Simon
More information about the U-Boot
mailing list