On 06/01/19 19:00, Kinney, Michael D wrote:
> Anthony,
> 
> I am curious.  I agree that a GUID can be defined in DEC file and
> in an include file that is used as a Vendor GUID in a device path.
> 
> Is there any reason that the FILE_GUID for the module needs to be
> the same GUID value?  Is there any code that looks for an FFS file
> with that GUID value as the FFS file name?

It's the other way around. "MdeModulePkg/Universal/SerialDxe" uses its own 
FILE_GUID for populating a device path node on a handle that it creates. Please 
see in "SerialIo.c":

SERIAL_DEVICE_PATH mSerialDevicePath = {
  {
    { HARDWARE_DEVICE_PATH, HW_VENDOR_DP, { sizeof (VENDOR_DEVICE_PATH), 0} },
    EFI_CALLER_ID_GUID  // Use the driver's GUID
  },

In turn, PlatformBootManagerLib instances have to refer to this device path 
(including said FILE_GUID) for setting up their console UEFI variables.

> If not, then it would be better to not over use that GUID value.
> The FILE_GUID of the SerialDxe can be different.

This would be a valid change, but for that, the device path protocol installed 
by SerialDxe should be decoupled from SerialDxe's own FILE_GUID.

Dependent on platform circumstances, that could be a compatibility issue, 
because the old ConIn / ConOut / ErrOut variables could stop working (still 
referencing the original FILE_GUID in the devpath).

Thanks!
Laszlo

> 
> Thanks,
> 
> Mike
> 
>> -----Original Message-----
>> From: devel@edk2.groups.io
>> [mailto:devel@edk2.groups.io] On Behalf Of Anthony
>> PERARD
>> Sent: Wednesday, May 29, 2019 4:37 AM
>> To: devel@edk2.groups.io
>> Cc: Wang, Jian J <jian.j.w...@intel.com>; Ni, Ray
>> <ray...@intel.com>; Ard Biesheuvel
>> <ard.biesheu...@linaro.org>; Zeng, Star
>> <star.z...@intel.com>; Wu, Hao A <hao.a...@intel.com>;
>> Julien Grall <julien.gr...@arm.com>; Leif Lindholm
>> <leif.lindh...@linaro.org>; Laszlo Ersek
>> <ler...@redhat.com>; Anthony PERARD
>> <anthony.per...@citrix.com>
>> Subject: [edk2-devel] [PATCH 0/4] Define
>> SERIAL_DXE_FILE_GUID only once
>>
>> The macro SERIAL_DXE_FILE_GUID is already been defined
>> twice and the GUID is
>> been used once without defining the macro. This patch
>> series define the macro
>> in MdeModulePkg where the SerialDxe is, and replace all
>> other use by this new
>> one.
>>
>> Note that I haven't build/test those changes, but I
>> have test the first patch
>> by applying a similar change to a patch series I'm
>> working on.
>>
>> Patch series available in this git branch:
>> https://xenbits.xen.org/git-
>> http/people/aperard/ovmf.git br.serial-dxe-guid-v1
>>
>> Anthony PERARD (4):
>>   MdeModulePkg: Add SERIAL_DXE_FILE_GUID
>>   ArmVirtPkg/PlatformBootManagerLib: Use
>> SERIAL_DXE_FILE_GUID from
>>     MdeModulePkg
>>   ArmPkg/PlatformBootManagerLib: Use
>> SERIAL_DXE_FILE_GUID from
>>     MdeModulePkg
>>   UefiPayloadPkg/PlatformBootManagerLib: Use
>> SERIAL_DXE_FILE_GUID from
>>     MdeModulePkg
>>
>>  MdeModulePkg/MdeModulePkg.dec                 |  3 +++
>>  MdeModulePkg/Include/Guid/SerialDxe.h         | 19
>> +++++++++++++++++++
>>  .../PlatformBootManagerLib/PlatformBm.c       |  6 +--
>> ---
>>  .../PlatformBootManagerLib/PlatformBm.c       |  6 +--
>> ---
>>  .../PlatformBootManagerLib/PlatformConsole.c  |  3 ++-
>>  5 files changed, 26 insertions(+), 11 deletions(-)
>>  create mode 100644
>> MdeModulePkg/Include/Guid/SerialDxe.h
>>
>> --
>> Anthony PERARD
>>
>>
>> 
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#41812): https://edk2.groups.io/g/devel/message/41812
Mute This Topic: https://groups.io/mt/31832613/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to