From: Ard Biesheuvel ard.biesheuvel@linaro.org Sent: Monday, February 12, 2018 12:22 PM To: Haojian Zhuang Cc: Leif Lindholm; edk2-devel@lists.01.org; heyi.guo@linaro.org; linaro-uefi@lists.linaro.org Subject: Re: [edk2] [PATCH v2 3/4] Platform/Hisilicon: move out dxe runtime lib from common file
On 12 February 2018 at 12:19, Haojian Zhuang haojian.zhuang@linaro.org wrote:
From: Ard Biesheuvel ard.biesheuvel@linaro.org Sent: Monday, February 12, 2018 12:05 PM To: Haojian Zhuang Cc: Leif Lindholm; edk2-devel@lists.01.org; heyi.guo@linaro.org; ard.sheuvel@linaro.org; linaro-uefi@lists.linaro.org Subject: Re: [edk2] [PATCH v2 3/4] Platform/Hisilicon: move out dxe runtime lib from common file
On 12 February 2018 at 11:47, Haojian Zhuang haojian.zhuang@linaro.org wrote:
From: Leif Lindholm leif.lindholm@linaro.org Sent: Monday, February 12, 2018 11:45 AM To: Haojian Zhuang Cc: edk2-devel@lists.01.org; linaro-uefi@lists.linaro.org; ard.sheuvel@linaro.org; heyi.guo@linaro.org Subject: Re: [PATCH v2 3/4] Platform/Hisilicon: move out dxe runtime lib from common file
On Sat, Feb 10, 2018 at 01:31:06AM +0800, Haojian Zhuang wrote:
With the SerialPortLib and DebugLib, Dxe runtime driver can't be executed well on HiKey. Serial logs are missing.
"Can't be executed well"? Does this mean it crashes?
No crash. Serial output are missing since SerialPortLib is different.
Does this driver take care to only create serial output at boot time? Does it, e.g., call EfiAtRuntime() or use a notification callback at ExitBootServices to make absolutely sure the serial port is no longer used?
These drivers don't use serial port directly. But I tried to use DEBUG () function to dump some debug informations in these drivers. I found that I can't output anything on serial console.
But do those DEBUG() calls only occur at boot time? Or could they be called at runtime as well?
Excuse me that I didn't explain it clearly.
At first, I need to make sure everything executed well when I switch to the common dsc file. So I added some debug messages in those key drivers. In the second, I need to debug the boot flow later. I mean that I need some debug message in the initialization of DXE runtime driver. I'm considering to make use of EmuVariable and predefined emu variable region in RAM. Then I could store the predefined boot options in emu variable region. And I could re-use PlatformBootManager in ArmPlatformPkg without big changes. So I need to add some debug messages in these DXE runtime driver.
These two drivers in the common dsc file blocks me enabling debug messages in the initialization code of DXE runtime driver. So I have to move them out.
Best Regards Haojian