Add tracing functionality to U-Boot
Get series with b4
b4 am 20130626202435.GN28078@bill-the-catVersions newest first · linked by author and title
- v2 Latest2 of 21 patches 0 repliesNew
- v1 RFC0 of 15 patches 0 repliesSuperseded
2 of 21 patches are in this archive. The cover letter announces 21.
Patches in v2 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 15/21 | Refactor the bootm command to reduce code duplication | +0 | 0 replies | |
| 15/21 | Refactor the bootm command to reduce code duplication | +0 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.
Cover letter [U-Boot] [PATCH v2 0/21] Add tracing functionality to U-Boot
Quoted 25 lines · Simon Glass
This series adds a tracing feature to U-Boot which is useful for profiling boot time and other purposes.
The core trace library relies on standard gcc function instrumentation and a microsecond timer which should work correctly on almost any architecture. Generic board is used to avoid the need to add the same code in multiple places (
CONFIG_SYS_GENERIC_BOARD).Tracing must be built into the U-Boot image at build time, but can be paused and resumed while running. A trace buffer is used to collect trace information. This buffer can then be transmitted to a host for processing. A host-based processing tool is provided which converts the data to the same format used by Linux, and that can be read by the pytimechart GUI tool.
A U-Boot 'trace' command provides access to the trace information, including support for writing it to memory in a few forms.
Support is provided for stopping tracing at the last possible moment in the bootm process (just before U-Boot jumps to the OS). This is done with a new 'fake go' command, which allows bootm to go through the motions of an OS boot without actually committing to it. Once the 'fake go' is complete, U-Boot can stop tracing and continue execution to transmit the trace information to the host, before jumping to the OS for real.
Quoted 7 lines
The system is tested on sandbox, x86 and smdk5250/snow. It may work correctly on Tegra and other machines but unfortunately has not been tested. A simple test script is provided for sandbox, along with documentation on how to use the feature.
This feature has been successfully used alongside bootstage to locate bottlenecks and reduce overall boot time.
With v3 of 17/21, applied to u-boot/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20130626/e00f9701/attachment.pgp>