mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-13 15:03:58 +03:00
bootstage: Implement core microsecond boot time measurement
This defines the basics of a new boot time measurement feature. This allows
logging of very accurate time measurements as the boot proceeds, by using
an available microsecond counter.
To enable the feature, define CONFIG_BOOTSTAGE in your board config file.
Also available is CONFIG_BOOTSTAGE_REPORT which will cause a report to be
printed just before handing off to the OS.
Most IDs are not named at this stage. For that I would first like to
renumber them all.
Timer summary in microseconds:
Mark Elapsed Stage
0 0 reset
205,000 205,000 board_init_f
6,053,000 5,848,000 bootm_start
6,053,000 0 id=1
6,058,000 5,000 id=101
6,058,000 0 id=100
6,061,000 3,000 id=103
6,064,000 3,000 id=104
6,093,000 29,000 id=107
6,093,000 0 id=106
6,093,000 0 id=105
6,093,000 0 id=108
7,089,000 996,000 id=7
7,089,000 0 id=15
7,089,000 0 id=8
7,097,000 8,000 start_kernel
Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
committed by
Wolfgang Denk
parent
770605e4f9
commit
3a608ca01d
25
README
25
README
@@ -2261,6 +2261,31 @@ The following options need to be configured:
|
||||
example, some LED's) on your board. At the moment,
|
||||
the following checkpoints are implemented:
|
||||
|
||||
- Detailed boot stage timing
|
||||
CONFIG_BOOTSTAGE
|
||||
Define this option to get detailed timing of each stage
|
||||
of the boot process.
|
||||
|
||||
CONFIG_BOOTSTAGE_USER_COUNT
|
||||
This is the number of available user bootstage records.
|
||||
Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
|
||||
a new ID will be allocated from this stash. If you exceed
|
||||
the limit, recording will stop.
|
||||
|
||||
CONFIG_BOOTSTAGE_REPORT
|
||||
Define this to print a report before boot, similar to this:
|
||||
|
||||
Timer summary in microseconds:
|
||||
Mark Elapsed Stage
|
||||
0 0 reset
|
||||
3,575,678 3,575,678 board_init_f start
|
||||
3,575,695 17 arch_cpu_init A9
|
||||
3,575,777 82 arch_cpu_init done
|
||||
3,659,598 83,821 board_init_r start
|
||||
3,910,375 250,777 main_loop
|
||||
29,916,167 26,005,792 bootm_start
|
||||
30,361,327 445,160 start_kernel
|
||||
|
||||
Legacy uImage format:
|
||||
|
||||
Arg Where When
|
||||
|
||||
Reference in New Issue
Block a user