Ray, I knew there is one in MdePkg. But it has duplicate code with UefiDevicePathLib. That is why I add the Mandatory one. And it is recommended to use the one in UefiDevicePathLib path.
Thanks, Zhichao > -----Original Message----- > From: Ni, Ray > Sent: Friday, December 20, 2019 1:50 PM > To: devel@edk2.groups.io; Gao, Zhichao <zhichao....@intel.com> > Cc: Kinney, Michael D <michael.d.kin...@intel.com>; Gao, Liming > <liming....@intel.com>; Vitaly Cheptsov <vit9...@protonmail.com> > Subject: RE: [edk2-devel] [PATCH V3 0/2] *MdePkg/UefiDevicePathLib: Separate > the lib instances > > Zhichao, > \MdePkg\Library\UefiDevicePathLibDevicePathProtocol\ contains the version > that hard-depends on the protocol. > I don't think you need to add another version. > > Thanks, > Ray > > > -----Original Message----- > > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Gao, > > Zhichao > > Sent: Wednesday, December 18, 2019 10:11 AM > > To: devel@edk2.groups.io > > Cc: Kinney, Michael D <michael.d.kin...@intel.com>; Gao, Liming > > <liming....@intel.com>; Vitaly Cheptsov <vit9...@protonmail.com> > > Subject: [edk2-devel] [PATCH V3 0/2] *MdePkg/UefiDevicePathLib: > > Separate the lib instances > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2298 > > > > The UefiDevicePathLibOptionalDevicePathProtocolConstructor's > > implementation > > isn't match with its instance name. > > Remove the ASSERT and depex of the gEfiDevicePathUtilitiesProtocolGuid > > because of "Optional". > > > > Add a mandatory instance to force using the DevicePathUtilities, > > DevicePathToText and DevicePathFromText protocol with the ASSERT and > > depex. > > > > V2: > > The optional lib instance's construction should return success all the > > time. > > Change the desciption of the optional lib uni file. > > Change the copyright date of the mandatory one's uni file. > > > > V3: > > Remove the Status variable in > > UefiDevicePathLibOptionalDevicePathProtocolConstructor. > > The Status would cause GCC build fail because the variable is > > initialized but not used. > > Since it is useless for the constructor, directly remove it. > > > > Cc: Michael D Kinney <michael.d.kin...@intel.com> > > Cc: Liming Gao <liming....@intel.com> > > Cc: Vitaly Cheptsov <vit9...@protonmail.com> > > Signed-off-by: Zhichao Gao <zhichao....@intel.com> > > > > Zhichao Gao (2): > > MdePkg/UefiDevicePathLib: Separate the device path lib > > MdePkg/dsc: Add UefiDevicePathLibMandatoryDevicePathProtocol for > > build > > > > ...DevicePathLibMandatoryDevicePathProtocol.c | 469 > > ++++++++++++++++++ > > ...vicePathLibMandatoryDevicePathProtocol.inf | 86 ++++ > > ...vicePathLibMandatoryDevicePathProtocol.uni | 18 + > > ...iDevicePathLibOptionalDevicePathProtocol.c | 21 +- > > ...evicePathLibOptionalDevicePathProtocol.inf | 5 +- > > ...evicePathLibOptionalDevicePathProtocol.uni | 6 +- > > MdePkg/MdePkg.dsc | 3 +- > > 7 files changed, 587 insertions(+), 21 deletions(-) create mode > > 100644 > > MdePkg/Library/UefiDevicePathLib/UefiDevicePathLibMandatoryDevicePat > > hProtocol.c > > create mode 100644 > > MdePkg/Library/UefiDevicePathLib/UefiDevicePathLibMandatoryDevicePat > > hProtocol.inf > > create mode 100644 > > MdePkg/Library/UefiDevicePathLib/UefiDevicePathLibMandatoryDevicePat > > hProtocol.uni > > > > -- > > 2.21.0.windows.1 > > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52442): https://edk2.groups.io/g/devel/message/52442 Mute This Topic: https://groups.io/mt/68779976/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-