From b9b7406c43e9d29bde3e9679c1b039cb91109097 Mon Sep 17 00:00:00 2001 From: Abner Chang Date: Mon, 12 Oct 2020 14:00:24 +0800 Subject: RedfishPkg/Include: PCD definitions of Host Interface EFI device path The definitions of Host Interface EFI device path structure PCD. Signed-off-by: Jiaxin Wu Signed-off-by: Siyuan Fu Signed-off-by: Fan Wang Signed-off-by: Abner Chang Cc: Jiewen Yao Cc: Nickle Wang Reviewed-by: Jiaxin Wu Reviewed-by: Nickle Wang --- RedfishPkg/Include/Pcd/RestExServiceDevicePath.h | 38 ++++++++++++++++++++++++ RedfishPkg/RedfishPkg.dec | 3 ++ 2 files changed, 41 insertions(+) create mode 100644 RedfishPkg/Include/Pcd/RestExServiceDevicePath.h (limited to 'RedfishPkg') diff --git a/RedfishPkg/Include/Pcd/RestExServiceDevicePath.h b/RedfishPkg/Include/Pcd/RestExServiceDevicePath.h new file mode 100644 index 0000000000..89de3b1a21 --- /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.
+ (C) Copyright 2020 Hewlett Packard Enterprise Development LP
+ + SPDX-License-Identifier: BSD-2-Clause-Patent + +**/ + +#ifndef REST_EX_SERVICE_DEVICE_PATH_H_ +#define REST_EX_SERVICE_DEVICE_PATH_H_ + +#include + +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 diff --git a/RedfishPkg/RedfishPkg.dec b/RedfishPkg/RedfishPkg.dec index e95ec5fe10..de3611252e 100644 --- a/RedfishPkg/RedfishPkg.dec +++ b/RedfishPkg/RedfishPkg.dec @@ -13,6 +13,9 @@ PACKAGE_GUID = c432b76e-5232-11e7-9010-005056c00008 PACKAGE_VERSION = 1.0 +[Includes] + Include + [Guids] gEfiRedfishPkgTokenSpaceGuid = { 0x4fdbccb7, 0xe829, 0x4b4c, { 0x88, 0x87, 0xb2, 0x3f, 0xd7, 0x25, 0x4b, 0x85 }} -- cgit v1.2.3