summaryrefslogtreecommitdiff
path: root/RedfishPkg/Include/Pcd
diff options
context:
space:
mode:
Diffstat (limited to 'RedfishPkg/Include/Pcd')
-rw-r--r--RedfishPkg/Include/Pcd/RestExServiceDevicePath.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/RedfishPkg/Include/Pcd/RestExServiceDevicePath.h b/RedfishPkg/Include/Pcd/RestExServiceDevicePath.h
new file mode 100644
index 0000000..89de3b1
--- /dev/null
+++ b/RedfishPkg/Include/Pcd/RestExServiceDevicePath.h
@@ -0,0 +1,38 @@
+/** @file
+ This library defines the UEFI device path data of network device for REST
+ service to decide which should be used as the Redfish host interface.
+
+ Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>
+ (C) Copyright 2020 Hewlett Packard Enterprise Development LP<BR>
+
+ SPDX-License-Identifier: BSD-2-Clause-Patent
+
+**/
+
+#ifndef REST_EX_SERVICE_DEVICE_PATH_H_
+#define REST_EX_SERVICE_DEVICE_PATH_H_
+
+#include <Protocol/DevicePath.h>
+
+typedef enum {
+ DEVICE_PATH_MATCH_MAC_NODE = 1,
+ DEVICE_PATH_MATCH_PCI_NODE = 2,
+ DEVICE_PATH_MATCH_MODE_MAX
+} DEVICE_PATH_MATCH_MODE;
+
+typedef struct {
+ UINT32 DevicePathMatchMode;
+ UINT32 DevicePathNum;
+ //
+ // Example:
+ // {DEVICE_PATH("PciRoot(0)/Pci(0,0)/MAC(005056C00002,0x1)")}
+ // DevicePath will be parsed as below:
+ // {0x02,0x01,0x0c,0x00,0xd0,0x41,0x03,0x0a,0x00,0x00,0x00,0x00,
+ // 0x01,0x01,0x06,0x00,0x00,0x00,
+ // 0x03,0x0b,0x25,0x00,0x00,0x50,0x56,0xc0,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
+ // 0x7f,0xff,0x04,0x00}
+ //
+ EFI_DEVICE_PATH_PROTOCOL DevicePath[];
+} REST_EX_SERVICE_DEVICE_PATH_DATA;
+
+#endif