public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH] RedfishPkg: RedfishDiscoverDxe: USB Redfish host interface is not supported
@ 2022-08-07 12:25 Igor Kulchytskyy
  2022-08-09  7:34 ` Chang, Abner
  0 siblings, 1 reply; 8+ messages in thread
From: Igor Kulchytskyy @ 2022-08-07 12:25 UTC (permalink / raw)
  To: devel@edk2.groups.io
  Cc: Abner.Chang@amd.com, nickle.wang@hpe.com, Igor Kulchytskyy

Host Interface details are discribed by the SMBIOS Type 42 table.
The table is published by the RedfishHostInterfaceDxe driver.
That driver supports PCI-E and USB host interface types.
The table is consumed by the RedfishGetHostInterfaceProtocolData function in the RedfishDiscoverDxe driver.
That function only supports PCI-E interface.


Cc: Abner Chang <Abner.Chang@amd.com>
Cc: Nickle Wang <nickle.wang@hpe.com>
Signed-off-by: Igor Kulchytskyy <igork@ami.com>
---
 RedfishPkg/RedfishDiscoverDxe/RedfishSmbiosHostInterface.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/RedfishPkg/RedfishDiscoverDxe/RedfishSmbiosHostInterface.c b/RedfishPkg/RedfishDiscoverDxe/RedfishSmbiosHostInterface.c
index d79750b..a3b977f 100644
--- a/RedfishPkg/RedfishDiscoverDxe/RedfishSmbiosHostInterface.c
+++ b/RedfishPkg/RedfishDiscoverDxe/RedfishSmbiosHostInterface.c
@@ -65,10 +65,15 @@ RedfishGetHostInterfaceProtocolData (
         RecordTmp       = (UINT8 *)Record + Offset;

         //
-        // Check Device Type, only PCI/PCIe Network Interface v2 is supported now.
+        // Check Device Type, PCI/PCIe and USB Network Interface v2 is supported.
         //
-        if (*RecordTmp == REDFISH_HOST_INTERFACE_DEVICE_TYPE_PCI_PCIE_V2) {
-          ASSERT (SpecificDataLen == sizeof (PCI_OR_PCIE_INTERFACE_DEVICE_DESCRIPTOR_V2) + 1);
+        if ((*RecordTmp == REDFISH_HOST_INTERFACE_DEVICE_TYPE_PCI_PCIE_V2) || (*RecordTmp == REDFISH_HOST_INTERFACE_DEVICE_TYPE_USB_V2)) {
+          if (*RecordTmp == REDFISH_HOST_INTERFACE_DEVICE_TYPE_PCI_PCIE_V2){
+              ASSERT (SpecificDataLen == sizeof (PCI_OR_PCIE_INTERFACE_DEVICE_DESCRIPTOR_V2) + 1);
+          }
+          if (*RecordTmp == REDFISH_HOST_INTERFACE_DEVICE_TYPE_USB_V2){
+              ASSERT (SpecificDataLen > sizeof (REDFISH_HOST_INTERFACE_DEVICE_TYPE_USB_V2) + 1);
+          }
           *DeviceDescriptor = (REDFISH_INTERFACE_DATA *)RecordTmp;
           Offset            = Offset + SpecificDataLen;
           RecordTmp         = (UINT8 *)Record + Offset;
--
2.6.1.windows.1
-The information contained in this message may be confidential and proprietary to American Megatrends (AMI). This communication is intended to be read only by the individual or entity to whom it is addressed or by their designee. If the reader of this message is not the intended recipient, you are on notice that any distribution of this message, in any form, is strictly prohibited. Please promptly notify the sender by reply e-mail or by telephone at 770-246-8600, and then delete or destroy all copies of the transmission.

^ permalink raw reply related	[flat|nested] 8+ messages in thread
* [PATCH] RedfishPkg: RedfishDiscoverDxe: USB Redfish host interface is not supported
@ 2022-08-04 15:25 Igor Kulchytskyy
  2022-08-05 16:31 ` Chang, Abner
  0 siblings, 1 reply; 8+ messages in thread
From: Igor Kulchytskyy @ 2022-08-04 15:25 UTC (permalink / raw)
  To: Abner.Chang@amd.com
  Cc: nickle.wang@hpe.com, Igor Kulchytskyy, devel@edk2.groups.io

Host Interface details are discribed by the SMBIOS Type 42 table.
The table is published by the RedfishHostInterfaceDxe driver.
That driver supports PCI-E and USB host interface types.
The table is consumed by the RedfishGetHostInterfaceProtocolData function
in the RedfishDiscoverDxe driver.
That function only supports PCI-E interface.
---
 RedfishPkg/RedfishDiscoverDxe/RedfishSmbiosHostInterface.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/RedfishPkg/RedfishDiscoverDxe/RedfishSmbiosHostInterface.c b/RedfishPkg/RedfishDiscoverDxe/RedfishSmbiosHostInterface.c
index d79750b..a3b977f 100644
--- a/RedfishPkg/RedfishDiscoverDxe/RedfishSmbiosHostInterface.c
+++ b/RedfishPkg/RedfishDiscoverDxe/RedfishSmbiosHostInterface.c
@@ -65,10 +65,15 @@ RedfishGetHostInterfaceProtocolData (
         RecordTmp       = (UINT8 *)Record + Offset;

         //
-        // Check Device Type, only PCI/PCIe Network Interface v2 is supported now.
+        // Check Device Type, PCI/PCIe and USB Network Interface v2 is supported.
         //
-        if (*RecordTmp == REDFISH_HOST_INTERFACE_DEVICE_TYPE_PCI_PCIE_V2) {
-          ASSERT (SpecificDataLen == sizeof (PCI_OR_PCIE_INTERFACE_DEVICE_DESCRIPTOR_V2) + 1);
+        if ((*RecordTmp == REDFISH_HOST_INTERFACE_DEVICE_TYPE_PCI_PCIE_V2) || (*RecordTmp == REDFISH_HOST_INTERFACE_DEVICE_TYPE_USB_V2)) {
+          if (*RecordTmp == REDFISH_HOST_INTERFACE_DEVICE_TYPE_PCI_PCIE_V2){
+              ASSERT (SpecificDataLen == sizeof (PCI_OR_PCIE_INTERFACE_DEVICE_DESCRIPTOR_V2) + 1);
+          }
+          if (*RecordTmp == REDFISH_HOST_INTERFACE_DEVICE_TYPE_USB_V2){
+              ASSERT (SpecificDataLen > sizeof (REDFISH_HOST_INTERFACE_DEVICE_TYPE_USB_V2) + 1);
+          }
           *DeviceDescriptor = (REDFISH_INTERFACE_DATA *)RecordTmp;
           Offset            = Offset + SpecificDataLen;
           RecordTmp         = (UINT8 *)Record + Offset;
--
2.6.1.windows.1
-The information contained in this message may be confidential and proprietary to American Megatrends (AMI). This communication is intended to be read only by the individual or entity to whom it is addressed or by their designee. If the reader of this message is not the intended recipient, you are on notice that any distribution of this message, in any form, is strictly prohibited. Please promptly notify the sender by reply e-mail or by telephone at 770-246-8600, and then delete or destroy all copies of the transmission.

^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2022-08-11  3:27 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-08-07 12:25 [PATCH] RedfishPkg: RedfishDiscoverDxe: USB Redfish host interface is not supported Igor Kulchytskyy
2022-08-09  7:34 ` Chang, Abner
2022-08-09 19:21   ` Igor Kulchytskyy
2022-08-10  0:05     ` Chang, Abner
2022-08-11  0:32       ` Chang, Abner
2022-08-11  3:27         ` Igor Kulchytskyy
  -- strict thread matches above, loose matches on Subject: below --
2022-08-04 15:25 Igor Kulchytskyy
2022-08-05 16:31 ` Chang, Abner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox