From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (NAM10-BN7-obe.outbound.protection.outlook.com [40.107.92.84]) by mx.groups.io with SMTP id smtpd.web10.8874.1679300080421046132 for ; Mon, 20 Mar 2023 01:14:40 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="body hash did not verify" header.i=@amd.com header.s=selector1 header.b=TfY2tv3P; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: amd.com, ip: 40.107.92.84, mailfrom: abner.chang@amd.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ia4InRlnF64mTltJAzUgxBQTZKu1/cdxT8+mK/+Yh7TFzvOnPX24T8C+VBJCWsiItly5fYoclRbBoiuIMvBYEoI5Ywil/AqqMCQ0TgBbiZohOLNo7aoY435qyP/upct6Mw6sxA/Rs7+WL0Z8t7qXSZeenEH36BNXKUElYuIOU85j5XWjqsEbryoW/Lq+KpYbFnH7qToQOQqll6jo0jstFrQv8j0iiH+IrIF3wqaPDU8g+vgxsRHsGm956KsNtE34HL07AZw+RNaAzZDjRcONYkp9VGpl4txDkWv2T/S0CrIoNeNRlKHVWBSg47Uwfw3Wgv7wPVphgJUlorxeXYTycA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ptrCZnNH08YUFtz+OUZFXi/e8aV7psdL7bUbQ31eieQ=; b=UHI2pzcyylVYqRZzy1dz8dLCt3CagwsHcqVwXsS/4AUE8HVzAZ82dcLKWKs6lFFiuRLkUgbupiFI+v1lH1y/L5bc1nklOJ3x2ITnIF6eGPZWCgzZ/rkC91JNMecrVlOvaADArfNhJqnP+aWlaTpuzDbd3K2Wr0tdP/vlU3CLod6UgzMPfar7MTD5nHG2otQGHNzXF9bVZ168fwDyJdj188vf3ilMgb40GkfELoCZcfEIlvVKSne6Cz8p6gKRQSKGYCLCCxOZxyv9SKZIzCcP2ppDLhLGKLBqcyBOdIPBzeF4IbspIUoVAxELVsLIpcQlV1jw8KwnlowA6AVMlADHzA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ptrCZnNH08YUFtz+OUZFXi/e8aV7psdL7bUbQ31eieQ=; b=TfY2tv3PiSarv07RHiT0nr8NcB0wQKCiJXl4in7sLx1AbcRCxWd9IHjgndCGh1p0gCha2hzzCpvN3vMPwDFpmL/rwpr/2yW9YYgeHlgEVEHML9d3SjnkHam7N5ghw3yVhiKVAaIUp1dj7gS9ppQ08MGcPmf7gNLprzE4Z/bD9Yc= Received: from BN8PR04CA0005.namprd04.prod.outlook.com (2603:10b6:408:70::18) by DM4PR12MB8451.namprd12.prod.outlook.com (2603:10b6:8:182::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.33; Mon, 20 Mar 2023 08:14:35 +0000 Received: from BN8NAM11FT031.eop-nam11.prod.protection.outlook.com (2603:10b6:408:70:cafe::81) by BN8PR04CA0005.outlook.office365.com (2603:10b6:408:70::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.37 via Frontend Transport; Mon, 20 Mar 2023 08:14:35 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by BN8NAM11FT031.mail.protection.outlook.com (10.13.177.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6222.15 via Frontend Transport; Mon, 20 Mar 2023 08:14:34 +0000 Received: from TPE-L1-ABNCHANG.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Mon, 20 Mar 2023 03:14:33 -0500 From: "Chang, Abner" To: CC: Nickle Wang , Igor Kulchytskyy Subject: [PATCH v2 3/3] RedfishPkg: Update Readme.md Date: Mon, 20 Mar 2023 16:13:53 +0800 Message-ID: <20230320081353.1335-4-abner.chang@amd.com> X-Mailer: git-send-email 2.37.1.windows.1 In-Reply-To: <20230320081353.1335-1-abner.chang@amd.com> References: <20230320081353.1335-1-abner.chang@amd.com> MIME-Version: 1.0 Return-Path: Abner.Chang@amd.com X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB04.amd.com (10.181.40.145) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT031:EE_|DM4PR12MB8451:EE_ X-MS-Office365-Filtering-Correlation-Id: cb6525e6-6753-490e-eaa4-08db291b2420 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lz0AvoTtLo5Wdv2VHWwd4Q9CoCXr9ewwYDoEbsnSpIJlzaeAomQE9071+CYc1Z2L2sQG1Imb2qwjRBh2Re7cDFlNawm6zDcBQKLwlaQ/t13wTN8zXOQ/FWskgMrjghcRyiSyRMM3/K4x/meva7Emstwd3kUkEIwMVq8a2veNLEgaaHwz3NRMffRRyRZXlcoCZ8gFAhspw9/vnCUJuWpugSElmDzorfQuv1MQcH2gMTBgrudskY5dAhBQZvFVyR6xDsPgVxbsYA2pUWZO1ypSIhjbM03tBoNJgXAJ+XrLYQZoRNT8cm1KLMfwJ4ieA/4+fV52aPpioqWU2c/PF6wbDj9cyYKYwalChuqHYhZiCPJnmuJe6PcoCjIMlS+JnlaZzK5EcgYf2HttDxapBVNkqlV16uCc0TALD3S1h+/18KkHPyHsQJnxDnJX2OFUXC7t6XXJzl6XhY9rOOuOfF3e56U2mpFX0p7JJGy063OOFucvFqY1uxt3cMKb7nW0s9UrQV3QhQYwl3KYDeiG3BZt0TujRJMy/OJ4A7D0kZ+L+uCM2mg1qWODyM9F/dIrDAHx58yA5JoKa788nKWiRKCkSmicGI4o0nfmbO4bzpvPtRwBBqln7oGYRPKALKusRUHJrFwBHidWsHbsEXXoW3fQTA3ABxy5KCY0xZK/wCL6Jd6CjXK9vexnBk9C/7+SSGGdpkNckpGz7dZ1fc1s/42qHpWCNKam2/wSZ3fJSLTfBhp4x5zZRHTwymfULNrCG9ol/uMXRaurCFuD1QJ7wavdIp4l/jFMd9e1UhoWcospXogOTY/An2lrae04Gxr7AhGQKv1rXEelIiK93UAR7PLBmg== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230025)(4636009)(346002)(376002)(136003)(396003)(39860400002)(451199018)(46966006)(36840700001)(40470700004)(5660300002)(8936002)(36860700001)(186003)(6666004)(26005)(82740400003)(30864003)(16526019)(81166007)(41300700001)(356005)(36756003)(966005)(70586007)(19273905006)(40140700001)(1076003)(70206006)(4326008)(6916009)(7696005)(8676002)(40460700003)(40480700001)(54906003)(336012)(15650500001)(86362001)(82310400005)(2906002)(47076005)(83380400001)(2876002)(426003)(478600001)(2616005)(316002)(319084006)(319154004)(36900700001)(579004)(559001)(563064011);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Mar 2023 08:14:34.9581 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: cb6525e6-6753-490e-eaa4-08db291b2420 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT031.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB8451 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain From: Abner Chang Update readme.md and add figures to delineate the relationship of edk2 Redfish, USB NIC and IPMI. Signed-off-by: Abner Chang Cc: Nickle Wang Cc: Igor Kulchytskyy Reviewed-by: Nickle Wang --- RedfishPkg/Readme.md | 112 +++++- .../Documents/Media/BmcExposedUsbNic.svg | 283 +++++++++++++++ .../Media/EmualtorPlatformLibrary.svg | 286 +++++++++++++++ .../Media/PlatformWihtBmcLibrary.svg | 328 ++++++++++++++++++ 4 files changed, 1001 insertions(+), 8 deletions(-) create mode 100644 RedfishPkg/Documents/Media/BmcExposedUsbNic.svg create mode 100644 RedfishPkg/Documents/Media/EmualtorPlatformLibrary.svg create mode 100644 RedfishPkg/Documents/Media/PlatformWihtBmcLibrary.svg diff --git a/RedfishPkg/Readme.md b/RedfishPkg/Readme.md index a0e9f0892c2..7defe78eb1e 100644 --- a/RedfishPkg/Readme.md +++ b/RedfishPkg/Readme.md @@ -50,12 +50,107 @@ The library is incorporated with RedfishLib ***[[13]](= #[0])*** to encode and dec * **RedfishPkg\Library\JsonLib** ***[[14]](#[0])*** This is the wrapper of open source project ***[Jansson](https://digip.or= g/jansson)***, which is the library that provides APIs to manipulate JSON = payload. =20 -## Platform Components for EDK2 EmulatorPkg: - * **RedfishPlatformCredentialLib** - the EDK2 Emulator platform implementation of acquiring credential to bui= ld up the communication between UEFI firmware and Redfish service. ***[[10]= ](#[0])*** - - * **RedfishPlatformHostInterfaceLib** - EDK2 Emulator platform implementation which provides the information of = building up SMBIOS type 42h record. ***[[11]](#[0])*** +## Platform Components +### **EDK2 EmulatorPkg** +![EDK2 EmulatorPkg Figure](https://github.com/tianocore/edk2/blob/master/R= edfishPkg/Documents/Media/EmualtorPlatformLibrary.svg?raw=3Dtrue) + + * **RedfishPlatformCredentialLib**
+ The EDK2 Emulator platform implementation of acquiring credential to b= uild up the communication between + UEFI firmware and Redfish service. ***[[10]](#[0])*** + + The Redfish credential is hardcoded in the EmulatorPkg RedfishPlatform= CredentialLib. The credential is + used to access to the Redfish service hosted by [Redfish Profile Simul= ator](https://github.com/DMTF/Redfish-Profile-Simulator). + + * **RedfishPlatformHostInterfaceLib**
+ EDK2 Emulator platform implementation which provides the information o= f building up SMBIOS type 42h + record. ***[[11]](#[0])*** + + EmulatorPkg RedfishPlatformHostInterfaceLib library consumes the EFI V= ariable which is created + by [RedfishPlatformConfig EFI application](https://github.com/tianocor= e/edk2/tree/master/EmulatorPkg/Application/RedfishPlatformConfig). RedfishP= latformConfig EFI application stores not all of SMBIOS + Type42 record information but the necessary network properties of Redf= ish Host Interface in EFI + Variable. + +### **Platform with BMC and the BMC-Exposed USB Network Device** +![Platform with BMC Figure](https://github.com/tianocore/edk2/blob/master/= RedfishPkg/Documents/Media/BmcExposedUsbNic.svg?raw=3Dtrue) + +Server platform with BMC as the server management entity may expose the [U= SB Network Interface Device (NIC)](https://www.usb.org/document-library/cla= ss-definitions-communication-devices-12) +to the platform, which is so called the in-band host-BMC transport interfa= ce. The USB NIC exposed by BMC is +usually a link-local network device which has two network endpoints at hos= t and BMC ends. The endpoint at +host side is connected to the platform USB port, and it is enumerated by e= dk2 USB BUS driver. The edk2 USB +NIC driver then produces the **EFI Network Interface Identifier Protocol** +*(EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL_GUID_31)* and connected by EFI= Simple +Network Protocol (SNP) driver and the upper layer edk2 network drivers. Th= e applications can then utilize +the network stack built up on top of USB NIC to communicate with Redfish s= ervice hosted by BMC.
+BMC-exposed USB NIC is mainly designed for the communication between host = and BMC-hosted Redfish service. +BMC-exposed USB NIC can be public to host through [Redfish Host Interface = Specification](https://www.dmtf.org/sites/default/files/standards/documents= /DSP0270_1.3.0.pdf) and discovered by edk2 Redfish discovery +driver. The [Redfish Host Interface Specification](https://www.dmtf.org/si= tes/default/files/standards/documents/DSP0270_1.3.0.pdf) describes the dedi= cated host interface between host and +BMC. The specification follows the [SMBIOS Type 42 format](https://www.dmt= f.org/sites/default/files/standards/documents/DSP0134_3.6.0.pdf) and define= s the host interface as: +- Network Host Interface type (40h) +- Redfish over IP Protocol (04h) + +
+ +![Platform BMC Library Figure](https://github.com/tianocore/edk2/blob/mast= er/RedfishPkg/Documents/Media/PlatformWihtBmcLibrary.svg?raw=3Dtrue) + + * **RedfishPlatformCredentialLib**
+RedfishPlatformCredentialLib library instance on the platform with BMC use= s Redfish Credential +Bootstrapping IPMI commands defined in [Redfish Host Interface Specificati= on](https://www.dmtf.org/sites/default/files/standards/documents/DSP0270_1.= 3.0.pdf) to acquire the Redfish credential from BMC. edk2 +Redfish firmware then uses this credential to access to Redfish service ho= sted by BMC. + + * **RedfishPlatformHostInterfaceLib**
+BMC-exposed USB NIC, a IPMI Message channel is reported by BMC as a "IPMB-= 1.0" protocol and "802.3 LAN" +medium channel. edk2 firmware can issue a series of IPMI commands to acqui= re the channel +application information (NetFn App), transport network properties (NetFn T= ransport) and other necessary +information to build up the SMBIOS type 42h record. +In order to recognize the specific BMC-exposed USB NIC in case the platfor= m has more than one USB NIC +devices attached, the MAC address specified in the EFI Device Path Protoco= l of SNP EFI handle is used to +match with the MAC address of IPMI message channel. Due to the network inf= ormation such as the MAC +address, IP address, Subnet mask and Gateway are assigned by BMC, edk2 Red= fish implementation needs a +programmatic way to recognize the BMC-exposed USB NIC. + + * **MAC address:** Searching for the BMC-exposed USB NIC
+ The last byte of host-end USB NIC MAC address is the last byte of BMC-= end USB NIC MAC address minus 1. + RedfishPlatformHostInterfaceLib issues the NetFn Transport IPMI comman= d to get the MAC address of each + channel and checks them with the MAC address specified in the EFI Devi= ce Path Protocol.
+ + **_For example:_**
+ BMC-end USB NIC MAC address: 11-22-33-44-55-00
+ Host-end USB NIC MAC address: 11-22-33-44-55-ff + + * **IP Address:** Acquiring the host-end USB NIC IP Address
+ The last byte of host-end USB NIC IPv4 address is the last byte of BMC= -end USB NIC IPv4 address minus 1. + + **_For example:_**
+ BMC-end USB NIC IPv4 address: 165.10.0.10
+ Host-end USB NIC IPv4 address: 165.10.0.9 + + * **Other Network Properties**:
+ Due to the host-end USB NIC and BMC-end USB NIC is a link-local networ= k. Both of them have the same + network properties such as subnet mask and gateway. RedfishPlatformHos= tInterfaceLib issues the NetFn + Transport IPMI command to get the network properties of BMC-end USB NI= C and apply it on host-end USB + NIC. + + * **IPMI Commands that Used to Build up Redfish Host Interface** + + Standard IPMI commands those are used to build up the Redfish Host Int= erface for BMC-exposed USB NIC. + The USB NIC exposed by BMC must be reported as one of the message chan= nels as 802.3 LAN/IPMB 1.0 message + channel. + + | IPMI NetFn | IPMI Command| Purpose | Corresponding Host Interface Fi= eld| + |------------|-------------|---------|--------------------------------= ---| + | App
(0x06) | 0x42 | Check the message channel's medium type and p= rotocol.
Medium: 802.3 LAN
Protocol: IPMB 1.0| None| + | Transport
(0x0C) | 0x02 | Get MAC address of message channel. Use= d to match with the MAC address populated in EFI Device Path of network dev= ice| None| + | Group Ext
(0x2C) | Group Extension ID: 0x52
Command: 0x02 | Ch= eck if Redfish bootstrap credential is supported or not.| In Device Descrip= tor Data, Credential Bootstrapping Handle| + | Transport
(0x0C) | Command: 0x02
Parameter: 0x04 | Get BMC-end= message channel IP address source| In Protocol Specific Record Data
- H= ost IP Assignment Type
- Redfish Service IP Discovery Type
- Generate= the Host-side IP address|. + | Transport
(0x0C) | Command: 0x02
Parameter: 0x03 | Get BMC-end= message channel IPv4 address| In Protocol Specific Record Data
- Host I= P Address Format
- Host IP Address| + | Transport
(0x0C) | Command: 0x02
Parameter: 0x06 | Get BMC-end= message channel IPv4 subnet mask| In Protocol Specific Record Data
- Ho= st IP Mask
- Redfish Service IP Mask| + | Transport
(0x0C) | Command: 0x02
Parameter: 0x12 | Get BMC-end= message channel gateway IP address| None, used to configure edk2 network c= onfiguration| + | Transport
(0x0C) | Command: 0x02
Parameter: 0x14 | Get BMC-end= message channel VLAN ID| In Protocol Specific Record Data
Redfish Serv= ice VLAN ID| + + **__NOTE__** +``` +Current RedfishPlatformHostInterfaceLib implementation of BMC-exposed USB = NIC can only support IPv4 address format. +``` =20 ## Miscellaneous: =20 @@ -65,7 +160,6 @@ The library is incorporated with RedfishLib ***[[13]](#[= 0])*** to encode and dec For example, run shell command "RedfishPlatformConfig.efi -s 192.168.1= 0.101 255.255.255.0 192.168.10.123 255.255.255.0", which means the source IP address is 192.168.10.101, and the Redfish Server IP a= ddress is 192.168.10.123. ``` - * **Redfish Profile Simulator** Refer to [Redfish Profile Simulator](https://github.com/DMTF/Redfish-Pr= ofile-Simulator) to set up the Redfish service. We are also in the progress to contribute bug fixes and enhancements to= the mainstream Redfish Profile Simulator in order to incorporate with EDK2= Redfish solution. @@ -121,7 +215,9 @@ The library is incorporated with RedfishLib ***[[13]](#= [0])*** to encode and dec 1. [DSP0270](https://www.dmtf.org/sites/default/files/standards/documents/= DSP0270_1.3.0.pdf) - Redfish Host Interface Specification, 1.3.0 2. [DSP0266](https://www.dmtf.org/sites/default/files/standards/documents/= DSP0266_1.12.0.pdf) - Redfish Specification, 1.12.0 3. Redfish Schemas - https://redfish.dmtf.org/schemas/v1/ -4. UEFI Specification - http://uefi.org/specifications +4. SMBIOS - https://www.dmtf.org/sites/default/files/standards/documents/D= SP0134_3.6.0.pdf +5. USB CDC - https://www.usb.org/document-library/class-definitions-commun= ication-devices-12 +6. UEFI Specification - http://uefi.org/specifications =20 ## The Contributors Thanks to the below predecessors who contributed to the UEFI EDK2 Redfish = Prove of Concept code.\ diff --git a/RedfishPkg/Documents/Media/BmcExposedUsbNic.svg b/RedfishPkg/D= ocuments/Media/BmcExposedUsbNic.svg new file mode 100644 index 00000000000..c7088eb8d54 --- /dev/null +++ b/RedfishPkg/Documents/Media/BmcExposedUsbNic.svg @@ -0,0 +1,283 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + EDKII Network Stack= s(UEFI Driver Model) + + + + + + + + EFI REST EX= (UEFI Driver Model) + + + + + + + + BMC ExposedUSB Network Interface Device + + + + + + + + + + Redfish Service= + + + + + + + + + + + + + + + + + + + + EDKII Redfish Host = Interf= ace(DXE Driver) + + + + + + BMC + + + + + + On Network<= /text> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + EDKII Redfish Crede= ntial(DXE Driver) + + + + + + + + + + + + + + + + + + + + + + EDKII USB Stacks(UEFI Driver Model) + + + + + + + + + + + + + + + + + + + + + + EFI Redfish Discove= ry(UEFI Driver Model) + + + + + + + + diff --git a/RedfishPkg/Documents/Media/EmualtorPlatformLibrary.svg b/Redfi= shPkg/Documents/Media/EmualtorPlatformLibrary.svg new file mode 100644 index 00000000000..33aa6c79df0 --- /dev/null +++ b/RedfishPkg/Documents/Media/EmualtorPlatformLibrary.svg @@ -0,0 +1,286 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Redfish Service= + + + + + + + + + + + + On Network + + + + + + + + EDKII Redfish Creden= tial(DXE Driver) + + + + + + + + EDKII Redfish Host = Interf= ace(DXE Driver) + + + + + + + + Platform Redfish Credenti= al Library + + + + + + + + Platform Redfish Ho= st Int= erface Library + + + + + + EmulatorPkg Library Instan= ce + + + + + + EmulatorPkg Library Insta= nce + + + + + + + + + + + + + + + + + + + + + EFI Variable<= /text> + + + + + + + + + + + + + + + RedfishPlatformConfg.efi= + + + + + + + + + + + + + Information of <= /tspan>SMBIOS 42 Record + + + + + + Hardcoded Redfish Credential<= /tspan> + + + + + + Redfish Profile = Simulator + + + + + + + + + + + + + + + + + diff --git a/RedfishPkg/Documents/Media/PlatformWihtBmcLibrary.svg b/Redfis= hPkg/Documents/Media/PlatformWihtBmcLibrary.svg new file mode 100644 index 00000000000..e52d8478a88 --- /dev/null +++ b/RedfishPkg/Documents/Media/PlatformWihtBmcLibrary.svg @@ -0,0 +1,328 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Redfish Service= + + + + + + + + + + + + On Network + + + + + + + + EDKII Redfish Creden= tial(DXE Driver) + + + + + + + + EDKII Redfish Host = Interf= ace(DXE Driver) + + + + + + + + Platform Redfish Credenti= al Library + + + + + + + + Platform Redfish Ho= st Int= erface Library + + + + + + Platform with BMC Library = Instance + + + + + + + + + + + + + + + + + + + + Send IPMI NetFn App and I= PMI NetFn Transprort commands to acquire the network Information to build up SMBIOS 42 Record + + + + + + Platform with BMC Library= Instance + + + + + + + + + + + + BMC + + + + + + + + IpmiCommandLibrary= + + + + + + + + IpmiTransportProto= col + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + BMC ExposedUSB Network Interface Device + + + + + + + + + + + + + Get Redfish Credential us= ing IPMI Group Extension (Body code 52h for Redfish) + + + + + + + + --=20 2.37.1.windows.1