From 484e869dfd3b7e4b6c47cb65ae5d5f499fcc056e Mon Sep 17 00:00:00 2001 From: Abner Chang Date: Thu, 3 Dec 2020 13:08:40 +0800 Subject: [PATCH] EmulatorPkg: Redfish related changes on EmulatorPkg BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3102 - REDFISH_ENABLE definition to control EFI Redfish support - Add Redfish platform host interface library to EmulatorPkg build. - Set RestExServiceDevicePath PCD value. - Add Redfish host interface config EFI application to EmulatorPkg build. - Use Redfish DSC/FDF include file. Signed-off-by: Abner Chang Cc: Jordan Justen Cc: Andrew Fish Cc: Ray Ni Cc: Nickle Wang Cc: Peter O'Hanley Acked-by: Ray Ni --- EmulatorPkg/EmulatorPkg.dsc | 26 +++++++++++++++++++++++++- EmulatorPkg/EmulatorPkg.fdf | 5 +++++ 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/EmulatorPkg/EmulatorPkg.dsc b/EmulatorPkg/EmulatorPkg.dsc index c48e36a72c..850ce831f8 100644 --- a/EmulatorPkg/EmulatorPkg.dsc +++ b/EmulatorPkg/EmulatorPkg.dsc @@ -35,6 +35,11 @@ DEFINE NETWORK_ISCSI_ENABLE = FALSE DEFINE SECURE_BOOT_ENABLE = FALSE + # + # Redfish definition + # + DEFINE REDFISH_ENABLE = FALSE + [SkuIds] 0|DEFAULT @@ -96,7 +101,9 @@ # PlatformBootManagerLib|EmulatorPkg/Library/PlatformBmLib/PlatformBmLib.inf KeyMapLib|EmulatorPkg/Library/KeyMapLibNull/KeyMapLibNull.inf - + !if $(REDFISH_ENABLE) == TRUE + RedfishPlatformHostInterfaceLib|EmulatorPkg/Library/RedfishPlatformHostInterfaceLib/RedfishPlatformHostInterfaceLib.inf + !endif # # Misc # @@ -252,6 +259,18 @@ # 0-PCANSI, 1-VT100, 2-VT00+, 3-UTF8, 4-TTYTERM gEfiMdePkgTokenSpaceGuid.PcdDefaultTerminalType|1 +!if $(REDFISH_ENABLE) == TRUE + gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceDevicePath.DevicePathMatchMode|DEVICE_PATH_MATCH_MAC_NODE + gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceDevicePath.DevicePathNum|1 + # + # Below is the MAC address of network adapter on EDK2 Emulator platform. + # You can use ifconfig under EFI shell to get the MAC address of network adapter on EDK2 Emulator platform. + # + gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceDevicePath.DevicePath|{DEVICE_PATH("MAC(000000000000,0x1)")} + gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceAccessModeInBand|False + gEfiRedfishPkgTokenSpaceGuid.PcdRedfishDiscoverAccessModeInBand|False +!endif + [PcdsDynamicDefault.common.DEFAULT] gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64|0 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0 @@ -450,6 +469,11 @@ !include NetworkPkg/Network.dsc.inc +!if $(REDFISH_ENABLE) == TRUE + EmulatorPkg/Application/RedfishPlatformConfig/RedfishPlatformConfig.inf +!endif +!include RedfishPkg/Redfish.dsc.inc + [BuildOptions] # # Disable deprecated APIs. diff --git a/EmulatorPkg/EmulatorPkg.fdf b/EmulatorPkg/EmulatorPkg.fdf index b256aa9397..5420756eaa 100644 --- a/EmulatorPkg/EmulatorPkg.fdf +++ b/EmulatorPkg/EmulatorPkg.fdf @@ -208,6 +208,11 @@ INF EmulatorPkg/EmuSnpDxe/EmuSnpDxe.inf !endif !include NetworkPkg/Network.fdf.inc +# +# EFI Redfish drivers +# +!include RedfishPkg/Redfish.fdf.inc + INF FatPkg/EnhancedFatDxe/Fat.inf !if "XCODE5" not in $(TOOL_CHAIN_TAG) -- 2.39.2