summaryrefslogtreecommitdiffstats
path: root/qemu/roms/seabios/docs/Debugging.md
diff options
context:
space:
mode:
authorRajithaY <rajithax.yerrumsetty@intel.com>2017-04-25 03:31:15 -0700
committerRajitha Yerrumchetty <rajithax.yerrumsetty@intel.com>2017-05-22 06:48:08 +0000
commitbb756eebdac6fd24e8919e2c43f7d2c8c4091f59 (patch)
treeca11e03542edf2d8f631efeca5e1626d211107e3 /qemu/roms/seabios/docs/Debugging.md
parenta14b48d18a9ed03ec191cf16b162206998a895ce (diff)
Adding qemu as a submodule of KVMFORNFV
This Patch includes the changes to add qemu as a submodule to kvmfornfv repo and make use of the updated latest qemu for the execution of all testcase Change-Id: I1280af507a857675c7f81d30c95255635667bdd7 Signed-off-by:RajithaY<rajithax.yerrumsetty@intel.com>
Diffstat (limited to 'qemu/roms/seabios/docs/Debugging.md')
-rw-r--r--qemu/roms/seabios/docs/Debugging.md111
1 files changed, 0 insertions, 111 deletions
diff --git a/qemu/roms/seabios/docs/Debugging.md b/qemu/roms/seabios/docs/Debugging.md
deleted file mode 100644
index 7ab5d02d8..000000000
--- a/qemu/roms/seabios/docs/Debugging.md
+++ /dev/null
@@ -1,111 +0,0 @@
-This page describes the process of obtaining diagnostic information
-from SeaBIOS and for reporting problems.
-
-Diagnostic information
-======================
-
-SeaBIOS has the ability to output diagnostic messages. This is
-implemented in the code via calls to the "dprintf()" C function.
-
-On QEMU these messages are written to a special debug port. One can
-view these messages by adding '-chardev stdio,id=seabios -device
-isa-debugcon,iobase=0x402,chardev=seabios' to the QEMU command line.
-Once this is done, one should see status messages on the console.
-
-On coreboot these messages are generally written to the "cbmem"
-console (CONFIG_DEBUG_COREBOOT). If SeaBIOS launches a Linux operating
-system, one can obtain the cbmem tool from the coreboot repository and
-run "cbmem -c" to view the SeaBIOS diagnostic messages.
-
-Additionally, if a serial port is available, one may compile SeaBIOS
-to send the diagnostic messages to the serial port. See the SeaBIOS
-CONFIG_DEBUG_SERIAL option.
-
-Trouble reporting
-=================
-
-If you are experiencing problems with SeaBIOS, it's useful to increase
-the debugging level. This is done by running "make menuconfig" and
-setting CONFIG_DEBUG_LEVEL to a higher value. A debug level of 8 will
-show a lot of diagnostic information without flooding the serial port
-(levels above 8 will frequently cause too much data).
-
-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
-==========================
-
-One can use gdb with QEMU to debug system images. To do this, add '-s
--S' to the qemu command line. For example:
-
-`qemu -bios out/bios.bin -fda myfdimage.img -s -S`
-
-Then, in another session, run gdb with either out/rom16.o (to debug
-bios 16bit code) or out/rom.o (to debug bios 32bit code). For example:
-
-`gdb out/rom16.o`
-
-Once in gdb, use the command `target remote localhost:1234` to have
-gdb connect to QEMU. See the QEMU documentation for more information
-on using gdb and QEMU in this mode.
-
-When debugging 16bit code it is necessary to load the 16bit symbols
-twice in order for gdb to properly handle break points. To do this,
-run the following command `objcopy --adjust-vma 0xf0000 out/rom16.o
-rom16offset.o` and then run the following in gdb:
-
-```
-set architecture i8086
-add-symbol-file rom16offset.o 0
-```
-
-To debug a VGA BIOS image, run `gdb out/vgarom.o`, create a
-vgaromoffset.o file with offset 0xc0000, add use the gdb
-command `add-symbol-file out/vgaromoffset.o 0` to load the 16bit VGA
-BIOS symbols twice.
-
-If debugging the 32bit SeaBIOS initialization code with gdb, note that
-SeaBIOS does self relocation by default. This relocation will alter
-the location of initialization code symbols. Disable
-CONFIG_RELOCATE_INIT to prevent SeaBIOS from doing this.