]> git.proxmox.com Git - mirror_edk2.git/commitdiff
OvmfPkg: describe debug messages in the README file
authorjljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 15 May 2013 08:09:29 +0000 (08:09 +0000)
committerjljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 15 May 2013 08:09:29 +0000 (08:09 +0000)
Contributed-under: TianoCore Contribution Agreement 1.0

Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14364 6f19259b-4bc3-4df7-8a09-765794883524

OvmfPkg/README

index 0c0a81a6708fb9830892d58ab5fca8c754a7478b..2c8b51fc76bf79e4ec5d397313b730096bd100a9 100644 (file)
@@ -66,13 +66,30 @@ http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=How_to_build_OVM
   (qemu-system-x86_64 works for the IA32 firmware as well, of course.)\r
 * Use the QEMU -L parameter to specify the directory where the bios.bin\r
   file is located.\r
-* Optionally you can use the QEMU -serial command to capture the\r
-  OVMF debug messages.  For example: -serial file:serial.log\r
 * The EFI shell is built into OVMF builds at this time, so it should\r
   run automatically if a UEFI boot application is not found on the\r
   removable media.\r
 * On Linux, newer version of QEMU may enable KVM feature, and this might\r
   cause OVMF to fail to boot.  The QEMU '-no-kvm' may allow OVMF to boot.\r
+* Capturing OVMF debug messages on qemu:\r
+  - The default OVMF build writes debug messages to IO port 0x402.  The\r
+    following qemu command line options save them in the file called\r
+    debug.log: '-debugcon file:debug.log -global isa-debugcon.iobase=0x402'.\r
+  - It is possible to revert to the original behavior, when debug messages were\r
+    written to the emulated serial port (potentially intermixing OVMF debug\r
+    output with UEFI serial console output).  For this the\r
+    '-D DEBUG_ON_SERIAL_PORT' option has to be passed to the build command (see\r
+    the next section), and in order to capture the serial output qemu needs to\r
+    be started with eg. '-serial file:serial.log'.\r
+  - Debug messages fall into several categories.  Logged vs. suppressed\r
+    categories are controlled at OVMF build time by the\r
+    'gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel' bitmask (an UINT32\r
+    value) in the selected .dsc file.  Individual bits of this bitmask are\r
+    defined in <MdePkg/Include/Library/DebugLib.h>.  One non-default bit (with\r
+    some performance impact) that is frequently set for debugging is 0x00400000\r
+    (DEBUG_VERBOSE).\r
+  - The RELEASE build target ('-b RELEASE' build option, see below) disables\r
+    all debug messages.  The default build target is DEBUG.\r
 \r
 === Build Scripts ===\r
 \r
@@ -86,7 +103,7 @@ $ OvmfPkg/build.sh -a X64 qemu
 And to run a 64-bit UEFI bootable ISO image:\r
 $ OvmfPkg/build.sh -a X64 qemu -cdrom /path/to/disk-image.iso\r
 \r
-To build a 32-bit OVMF without debug serial messages using GCC 4.5:\r
+To build a 32-bit OVMF without debug messages using GCC 4.5:\r
 $ OvmfPkg/build.sh -a IA32 -b RELEASE -t GCC45\r
 \r
 === Network Support ===\r