diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2014-12-31 12:02:56 -0500 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2015-01-01 13:51:22 -0500 |
commit | 41d1f27f4165b3b7a177f98c436a137065ba9a98 (patch) | |
tree | 29a710fe3f5ac0b10328df3b2f0ae62c0a723355 | |
parent | 999567f6f4b898d8f17c6ccf21496c95ba658217 (diff) | |
download | seabios-41d1f27f4165b3b7a177f98c436a137065ba9a98.tar.gz |
docs: Add documentation on using readserial.py script
Update the debugging documentation with info on timing debug output
with readserial.py.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-rw-r--r-- | docs/Debugging.md | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/docs/Debugging.md b/docs/Debugging.md index d651fc90..03567de4 100644 --- a/docs/Debugging.md +++ b/docs/Debugging.md @@ -34,6 +34,43 @@ To report an issue, please collect the serial boot log with SeaBIOS set to a debug level of 8 and forward the full log along with a description of the problem to the SeaBIOS [mailing list](Mailinglist). +Timing debug messages +===================== + +The SeaBIOS repository has a tool (**scripts/readserial.py**) that can +timestamp each diagnostic message produced. The timestamps can provide +some additional information on how long internal processes take. It +also provides a simple profiling mechanism. + +The tool can be used on coreboot builds that have diagnostic messages +sent to a serial port. Make sure SeaBIOS is configured with +CONFIG_DEBUG_SERIAL and run the following on the host receiving serial +output: + +`/path/to/seabios/scripts/readserial.py /dev/ttyS0 115200` + +Update the above command with the appropriate serial device and baud +rate. + +The tool can also timestamp the messages from the QEMU debug port. To +use with QEMU run the following: + +`mkfifo qemudebugpipe`\ +`qemu -chardev pipe,path=qemudebugpipe,id=seabios -device isa-debugcon,iobase=0x402,chardev=seabios ...` + +and then in another session: + +`/path/to/seabios/scripts/readserial.py -nf qemudebugpipe` + +The mkfifo command only needs to be run once to create the pipe file. + +When readserial.py is running, it shows a timestamp with millisecond +precision of the amount of time since the start of the log. If one +presses the "enter" key in the readserial.py session it will add a +blank line to the screen and also reset the time back to zero. The +readserial.py program also keeps a log of all output in files that +look like "seriallog-YYYYMMDD_HHMMSS.log". + Debugging with gdb on QEMU ========================== |