From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from server202.webhostingpad.com (server202mail.webhostingpad.com [50.31.162.9]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 04489820FD for ; Tue, 14 Feb 2017 14:17:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=cmlab.biz; s=default; h=Content-Type:In-Reply-To:MIME-Version:Date:Message-ID:From:Cc: References:To:Subject:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=tAA1dCpIzOt1c6mBiM9lKCvzIdto8AGGnmU8lq2+/7g=; b=S3h+4Py8gAKL+eK/veZgp7/1uZ HZTdBfuqls84GD+uPESS0Nx22t+5M9KSMYzXFvij31nFCrjYkub2PAkkGI2RxcvGT+/FRevQpRsdB VUFwtkhHHsjg9RmjkplVP8+5We521hvIv3Qi1ZbHZ/pO+UHSMtG3RSyCFJmI5FK6izV8=; Received: from [71.216.152.198] (port=42094 helo=[192.168.50.197]) by server202.webhostingpad.com with esmtpsa (TLSv1:DHE-RSA-AES128-SHA:128) (Exim 4.87) (envelope-from ) id 1cdlPx-004JV3-QX; Tue, 14 Feb 2017 16:17:49 -0600 To: Nikolay Bodunov , "Kinney, Michael D" References: <485eda84-7d3c-cbcf-6dbe-bc302aa8e3c0@redhat.com> Cc: "edk2-devel@ml01.01.org" , Laszlo Ersek From: "David A. Van Arnem" Message-ID: <09003614-2953-3c06-2b7d-b0fdb81fd581@cmlab.biz> Date: Tue, 14 Feb 2017 15:17:48 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0 MIME-Version: 1.0 In-Reply-To: X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - server202.webhostingpad.com X-AntiAbuse: Original Domain - ml01.01.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - cmlab.biz X-Get-Message-Sender-Via: server202.webhostingpad.com: authenticated_id: dvanarnem@cmlab.biz X-Authenticated-Sender: server202.webhostingpad.com: dvanarnem@cmlab.biz X-Source: X-Source-Args: X-Source-Dir: X-Content-Filtered-By: Mailman/MimeDel 2.1.21 Subject: =?UTF-8?B?UmU6IERFQlVHKCkgbWFjcm9zIGluIERYRSBkcml2ZXI6IGNhbuKAmXQgbWFrZSBpdCB3b3JrIGluIFFFTVU=?= X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Feb 2017 22:17:51 -0000 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi, =46rom a quick look at your code, I'm not sure you want to make a DXE_DRIVER. The code looks more like a UEFI_APPLICATION. CrScreenshotDxe.c should normally manage a device, for UEFI_DRIVERS it will implement the Driver Binding Protocol functions Supported(), Start(), and Stop(). Likely, the reason you aren't seeing any DEBUG() messages is because your functions aren't being called. Regards, David On 02/14/2017 03:06 PM, Nikolay Bodunov wrote: > Thank you for the suggestions. >=20 > I tried to use them: >=20 >> (1) Please always terminate the debug message with a newline ("\n") > Done. No changes. Of course, I usually do it, but in that case all I ne= eded > was to have any string on output. Sorry for bad programming style. >=20 >> (2) Please use DEBUG_ERROR as the symbolic constant for the error mask= > Done. I think you meant in DEBUG() macros. No changes. Question about > style, too. >=20 >> (3) DEBUG output from OVMF is by default not written to the serial por= t > and >> add -D DEBUG_ON_SERIAL_PORT > Done. Recompiled OVMF with that option. I have now file "debug.log" 744= 15 > bytes size that contains everything, include EFI Shell output, but exce= pt > my debug messages >=20 > BTW, QEMU option "-debugcon file:debug.log -global > isa-debugcon.iobase=3D0x402", recommended in OVMF README, did nothing -= > "debug.log was empty. >=20 > Based on results, I suppose that the problem is not on OVMF side. > Hope you propose something else to try. Maybe I got something in a wron= g > way. >=20 > Nikolay >=20 > 2017-02-14 21:28 GMT+03:00 Kinney, Michael D : >=20 >> If you prefer debug messages on a serial port, you can >> add -D DEBUG_ON_SERIAL_PORT >> >> Mike >> >>> -----Original Message----- >>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf O= f >> Laszlo Ersek >>> Sent: Tuesday, February 14, 2017 10:17 AM >>> To: Nikolay Bodunov ; edk2-devel@ml01.01.o= rg >>> Subject: Re: [edk2] DEBUG() macros in DXE driver: can=E2=80=99t make = it work in >> QEMU >>> >>> Hi Nikolay, >>> >>> On 02/14/17 18:55, Nikolay Bodunov wrote: >>>> Hello >>>> >>>> >>>> I compiled DXE Driver, in DEBUG_GCC49 mode, but I can=E2=80=99t prin= t any debug >>>> message. >>>> DEBUG((-1, =E2=80=9CPrint test=E2=80=9D)) does nothing. Exactly as= >>>> DebugPrint(EFI_D_ERROR, =E2=80=9CPrint Test); >>> >>> (1) Please always terminate the debug message with a newline ("\n") o= nce >>> you are done with it. (It's okay to format a single message with seve= ral >>> DEBUG calls of course, and terminate only the last DEBUG with a newli= ne.) >>> >>> (2) Please use DEBUG_ERROR as the symbolic constant for the error mas= k. >>> >>>> >>>> However, I see =E2=80=9CPrint Test=E2=80=9D string in my *.efi binar= y. >>>> 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 /=E2=80=A6/FV/OVMF.fd -hda hdd.img -s= erial >>>> file:./serial_file >>> >>> (3) DEBUG output from OVMF is by default not written to the serial po= rt, >>> it is written to the QEMU debug port. Please consult OvmfPkg/README f= or >>> 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 =3D 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=E2=80=99t change: >>>> >>>> >>>> [Components] >>>> >>>> >>>> MdeModulePkg/CrScreenshotDxe/CrScreenshotDxe.inf { >>>> >>>> >>>> >>>> >>>> >>>> gEfiMdePkgTokenSpaceGuid.gEfiMdePkgTokenSpaceGuid. >> PcdDebugPrintErrorLevel|0x07 >>>> >>>> gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2F >>>> >>>> gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000042 >>>> >>>> >>>> >>>> >>>> >>>> >>>> DebugLib|MdePkg/Library/BaseDebugLibSerialPort/ >> BaseDebugLibSerialPort.inf >>>> >>>> >>>> >>>> >>>> GCC:*_*_*_CC_FLAGS =3D -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? >>>> >>> >>> _______________________________________________ >>> edk2-devel mailing list >>> edk2-devel@lists.01.org >>> https://lists.01.org/mailman/listinfo/edk2-devel >> >=20 >=20 >=20 --=20 Regards, David Van Arnem Development Engineer IV Computer Measurement Laboratory, LLC