From: Laszlo Ersek <lersek@redhat.com>
To: Nikolay Bodunov <nikolay.bodunov@gmail.com>, edk2-devel@ml01.01.org
Subject: Re: DEBUG() macros in DXE driver: can’t make it work in QEMU
Date: Tue, 14 Feb 2017 19:16:44 +0100 [thread overview]
Message-ID: <485eda84-7d3c-cbcf-6dbe-bc302aa8e3c0@redhat.com> (raw)
In-Reply-To: <CANqPu1LxU62isgz+pFr2yx6jb60zcYw2ofvogJtW9WpCd_dnGA@mail.gmail.com>
Hi Nikolay,
On 02/14/17 18:55, Nikolay Bodunov wrote:
> Hello
>
>
> I compiled DXE Driver, in DEBUG_GCC49 mode, but I can’t print any debug
> message.
> DEBUG((-1, “Print test”)) does nothing. Exactly as
> DebugPrint(EFI_D_ERROR, “Print Test);
(1) Please always terminate the debug message with a newline ("\n") once
you are done with it. (It's okay to format a single message with several
DEBUG calls of course, and terminate only the last DEBUG with a newline.)
(2) Please use DEBUG_ERROR as the symbolic constant for the error mask.
>
> However, I see “Print Test” string in my *.efi binary.
> I use QEMU + OMVF (OVMF was also recompliled in DEBUG_GCC49 mode, to be
> sure). Serial port output is redirected to a file:
> qemu-system-x86_64 -L . --bios /…/FV/OVMF.fd -hda hdd.img -serial
> file:./serial_file
(3) DEBUG output from OVMF is by default not written to the serial port,
it is written to the QEMU debug port. Please consult OvmfPkg/README for
specifics, namely under "Capturing OVMF debug messages on qemu".
Hope this helps,
Laszlo
>
> All I see in output file is EFI shell output messages, include one that my
> driver was succesfully loaded. But no messages from DEBUG().
>
>
> My conditions:
>
> MODULE_TYPE = DXE_DRIVER
>
>
> Debug Print Library:
>
> DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
>
> (BaseDebugLibNull.inf is commented, of course)
>
>
> DebugPrintEnabled() returns TRUE
>
>
> I also tried to set some key options manually in MdeModulePkg.dsc
> afterwards, but result didn’t change:
>
>
> [Components]
>
>
> MdeModulePkg/CrScreenshotDxe/CrScreenshotDxe.inf {
>
>
> <PcdsFixedAtBuild>
>
>
> gEfiMdePkgTokenSpaceGuid.gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x07
>
> gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2F
>
> gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000042
>
>
>
> <LibraryClasses>
>
>
> DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
>
>
> <BuildOptions>
>
> GCC:*_*_*_CC_FLAGS = -UMDEPKG_NDEBUG
>
> }
>
>
> Code (I used it as a base): https://github.com/LongSoft/CrScreenshotDxe
>
> Where I got wrong and what else could I try to make it work?
>
next prev parent reply other threads:[~2017-02-14 18:16 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-14 17:55 DEBUG() macros in DXE driver: can’t make it work in QEMU Nikolay Bodunov
2017-02-14 18:16 ` Laszlo Ersek [this message]
2017-02-14 18:28 ` Kinney, Michael D
2017-02-14 22:06 ` Nikolay Bodunov
2017-02-14 22:17 ` David A. Van Arnem
2017-02-14 22:36 ` Nikolay Bodunov
2017-02-14 23:14 ` David A. Van Arnem
2017-02-14 23:46 ` Nikolay Bodunov
2017-02-15 0:00 ` David A. Van Arnem
2017-02-15 12:39 ` Laszlo Ersek
2017-02-16 18:05 ` Andrew Fish
2017-02-16 18:59 ` Laszlo Ersek
2017-02-15 10:13 ` Laszlo Ersek
2017-02-15 17:19 ` Nikolay Bodunov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=485eda84-7d3c-cbcf-6dbe-bc302aa8e3c0@redhat.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox