Re: [EFI Redfish Host Interface PATCH 2/5] RedfishPkg/Include: PlatformHostInterfaceLib header file

Nickle Wang

Hi Abner,

I found that the parameter is not defined as it is described in function header. Please check my comment inline below.


-----Original Message-----
From: Chang, Abner (HPS SW/FW Technologist) <abner.chang@...>
Sent: Tuesday, October 13, 2020 12:08 PM
Cc: Jiaxin Wu <jiaxin.wu@...>; Siyuan Fu <siyuan.fu@...>; Fan
Wang <>; Jiewen Yao <jiewen.yao@...>; Wang,
Nickle (HPS SW) <>
Subject: [EFI Redfish Host Interface PATCH 2/5] RedfishPkg/Include:
PlatformHostInterfaceLib header file

Signed-off-by: Abner Chang <abner.chang@...>

Cc: Jiaxin Wu <jiaxin.wu@...>
Cc: Siyuan Fu <siyuan.fu@...>
Cc: Fan Wang <>
Cc: Jiewen Yao <jiewen.yao@...>
Cc: Nickle Wang <>
.../Include/Library/RedfishHostInterfaceLib.h | 52 +++++++++++++++++++
1 file changed, 52 insertions(+)
create mode 100644 RedfishPkg/Include/Library/RedfishHostInterfaceLib.h

diff --git a/RedfishPkg/Include/Library/RedfishHostInterfaceLib.h
new file mode 100644
index 0000000000..870109e09a
--- /dev/null
+++ b/RedfishPkg/Include/Library/RedfishHostInterfaceLib.h
@@ -0,0 +1,52 @@
+/** @file
+ Definitinos of RedfishHostInterfaceDxe driver.
+ (C) Copyright 2020 Hewlett Packard Enterprise Development LP<BR>
+ SPDX-License-Identifier: BSD-2-Clause-Patent
+#include <Uefi.h>
+#include <IndustryStandard/RedfishHostInterface.h>
+#include <IndustryStandard/SmBios.h>
+#include <Protocol/Smbios.h>
+ Get platform Redfish host interface device descriptor.
+ @param[out] DeviceType Pointer to retrieve device type.
+ @param[out] DeviceDescriptor Pointer to retrieve
REDFISH_INTERFACE_DATA, caller has to free
+ this memory using FreePool().
+ @retval EFI_SUCCESS Device descriptor is returned successfully in
+ @retval EFI_NOT_FOUND No Redfish host interface descriptor provided
on this platform.
+ @retval Others Fail to get device descriptor.
+RedfishPlatformHostInterfaceDeviceDescriptor (
+ IN UINT8 *DeviceType,
In the function header, they are OUT parameter but they are defined as IN here.

+ Get platform Redfish host interface protocol data.
+ Caller should pass NULL in ProtocolRecord to retrive the first protocol
+ Then continuously pass previous ProtocolRecord for retrieving the next
+ @param[in, out] ProtocolRecord Pointer to retrieve the first or the next
protocol record.
+ caller has to free the new protocol record returned from
+ this function using FreePool().
+ param[in] IndexOfProtocolData The index of protocol data.
+ @retval EFI_SUCESS Protocol records are all returned.
+ @retval EFI_NOT_FOUND No more protocol records.
+ @retval Others Fail to get protocol records.
+RedfishPlatformHostInterfaceProtocolData (
This is IN and OUT, right? If not, the function header needs modification.

+ IN UINT8 IndexOfProtocolData

Join to automatically receive all group messages.