On Thu, Nov 23, 2023 at 9:48 AM <abner.ch...@amd.com> wrote: > > From: Abner Chang <abner.ch...@amd.com> > > Introduce gEdkIIRedfishHostInterfaceReadyProtocolGuid > and produce it when Redfish Host Interface is installed > on system. > > Signed-off-by: Abner Chang <abner.ch...@amd.com> > Cc: Nickle Wang <nick...@nvidia.com> > Cc: Igor Kulchytskyy <ig...@ami.com> > Cc: Mike Maslenkin <mike.maslen...@gmail.com> > --- > RedfishPkg/RedfishPkg.dec | 3 +++ > .../RedfishHostInterfaceDxe.inf | 3 ++- > .../RedfishHostInterfaceDxe.c | 16 ++++++++++++++++ > 3 files changed, 21 insertions(+), 1 deletion(-) > > diff --git a/RedfishPkg/RedfishPkg.dec b/RedfishPkg/RedfishPkg.dec > index 0f18865cea0..e40538247c2 100644 > --- a/RedfishPkg/RedfishPkg.dec > +++ b/RedfishPkg/RedfishPkg.dec > @@ -90,6 +90,9 @@ > ## Include/Protocol/EdkIIRedfishPlatformConfig.h > gEdkIIRedfishPlatformConfigProtocolGuid = { 0X4D94A7C7, 0X4CE4, 0X4A84, { > 0X88, 0XC1, 0X33, 0X0C, 0XD4, 0XA3, 0X47, 0X67 } } > > + # Redfish Host Interface ready notification protocol > + gEdkIIRedfishHostInterfaceReadyProtocolGuid = { 0xC3F6D062, 0x3D38, > 0x4EA4, { 0x92, 0xB1, 0xE8, 0xF8, 0x02, 0x27, 0x63, 0xDF } } > + > [Guids] > gEfiRedfishPkgTokenSpaceGuid = { 0x4fdbccb7, 0xe829, 0x4b4c, { 0x88, > 0x87, 0xb2, 0x3f, 0xd7, 0x25, 0x4b, 0x85 }} > > diff --git a/RedfishPkg/RedfishHostInterfaceDxe/RedfishHostInterfaceDxe.inf > b/RedfishPkg/RedfishHostInterfaceDxe/RedfishHostInterfaceDxe.inf > index 1cdae149aad..f969e75463f 100644 > --- a/RedfishPkg/RedfishHostInterfaceDxe/RedfishHostInterfaceDxe.inf > +++ b/RedfishPkg/RedfishHostInterfaceDxe/RedfishHostInterfaceDxe.inf > @@ -43,7 +43,8 @@ > UefiLib > > [Protocols] > - gEfiSmbiosProtocolGuid ## TO_START > + gEfiSmbiosProtocolGuid ## TO_START > + gEdkIIRedfishHostInterfaceReadyProtocolGuid ## PRODUCED > > [Depex] > gEfiSmbiosProtocolGuid > diff --git a/RedfishPkg/RedfishHostInterfaceDxe/RedfishHostInterfaceDxe.c > b/RedfishPkg/RedfishHostInterfaceDxe/RedfishHostInterfaceDxe.c > index 55a66decfc8..94c0f9b6a92 100644 > --- a/RedfishPkg/RedfishHostInterfaceDxe/RedfishHostInterfaceDxe.c > +++ b/RedfishPkg/RedfishHostInterfaceDxe/RedfishHostInterfaceDxe.c > @@ -53,7 +53,9 @@ RedfishCreateSmbiosTable42 ( > SMBIOS_TABLE_TYPE42 *Type42Record; > EFI_SMBIOS_PROTOCOL *Smbios; > EFI_SMBIOS_HANDLE MemArrayMappedAddrSmbiosHandle; > + EFI_HANDLE Handle; > > + Handle = NULL; > // > // Get platform Redfish host interface device type descriptor data. > // > @@ -228,6 +230,20 @@ RedfishCreateSmbiosTable42 ( > > Status = EFI_SUCCESS; > > + // > + // Install Redfish Host Interface ready protocol. > + // > + Status = gBS->InstallProtocolInterface ( > + &Handle, > + &gEdkIIRedfishHostInterfaceReadyProtocolGuid, > + EFI_NATIVE_INTERFACE, > + (VOID *)NULL > + ); > + if (EFI_ERROR (Status)) { > + DEBUG ((DEBUG_ERROR, "Failed to install > gEdkIIRedfishHostInterfaceReadyProtocolGuid.\n")); > + DEBUG ((DEBUG_ERROR, "PlatformConfigHandler driver may not be triggered > to acquire Redfish service.\n")); > + } > + > ON_EXIT: > if (DeviceDescriptor != NULL) { > FreePool (DeviceDescriptor); > -- > 2.37.1.windows.1 >
You have clobbered explicit Status = EFI_SUCCESS; is it intended? Overall result of this function does not depend from this InstallProtocolInterface() call, SMBIOS table has been installed successfully. Looks like InstallProtocolInterface() should be added before Status return value set. -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#111705): https://edk2.groups.io/g/devel/message/111705 Mute This Topic: https://groups.io/mt/102763119/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-