From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0b-002e3701.pphosted.com (mx0b-002e3701.pphosted.com [148.163.143.35]) by mx.groups.io with SMTP id smtpd.web12.5252.1635383296780912775 for ; Wed, 27 Oct 2021 18:08:21 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@hpe.com header.s=pps0720 header.b=Mh+QBPvx; spf=temperror, err=temporary DNS error (domain: hpe.com, ip: 148.163.143.35, mailfrom: prvs=09357d8486=abner.chang@hpe.com) Received: from pps.filterd (m0148664.ppops.net [127.0.0.1]) by mx0b-002e3701.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 19RNIBJw019000; Thu, 28 Oct 2021 01:07:26 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hpe.com; h=from : to : cc : subject : date : message-id : content-transfer-encoding : mime-version; s=pps0720; bh=nvilr8brrXcpGTzOnkRb3aYXIHZgD0yQbQLxosUQMb4=; b=Mh+QBPvxcMb1JvOEalYhwxegFqlWcWyVpKbA6vXSXOuhUcgQVWc7F4+ZMvyMEXlHJsYb 8Atl8sJI/0Mw8thcZORSbmVvvZJUUqJFi/9Z/VmO6fbqqQDBlz4Yc1O4CN+MaMfjY42W Fz0Lbmz/dxBXd6R9+6WyhLuF3NYBq62YwY05WY/FsGkF2pO9VQvULvn4cVLM3GBD6CAi aKQT8yN7Ye2gZ7/HWlq9L1OBCJmvSStzG9VfYAFEzqgeFXlPxZx2wSxok4GTglqJg93e wF6HDZ/Ao0XD/0fUmNDfeqHmQFvPY/HRx8vAxkOv+AQh8X4ksDhEFw2lakHsMyymWW7O eQ== Received: from g2t2353.austin.hpe.com (g2t2353.austin.hpe.com [15.233.44.26]) by mx0b-002e3701.pphosted.com with ESMTP id 3bxw8v26k5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 28 Oct 2021 01:07:26 +0000 Received: from g2t2360.austin.hpecorp.net (g2t2360.austin.hpecorp.net [16.196.225.135]) by g2t2353.austin.hpe.com (Postfix) with ESMTP id 92F0D84; Thu, 28 Oct 2021 01:07:25 +0000 (UTC) Received: from SAC2XFT1JT.asiapacific.hpqcorp.net (unknown [10.43.62.133]) by g2t2360.austin.hpecorp.net (Postfix) with ESMTP id AD48536; Thu, 28 Oct 2021 01:07:24 +0000 (UTC) From: "Abner Chang" To: devel@edk2.groups.io Cc: nickle.wang@hpe.com, Liming Gao Subject: [PATCH RESEND 0/5] Implementation of EDKII Redfish Platform Config Protocol Date: Thu, 28 Oct 2021 09:07:18 +0800 Message-Id: <20211028010723.37316-1-abner.chang@hpe.com> X-Mailer: git-send-email 2.21.0.windows.1 X-Proofpoint-GUID: m-xRXWkHGKuZ2rE8J3U46jG0_rhskIZV X-Proofpoint-ORIG-GUID: m-xRXWkHGKuZ2rE8J3U46jG0_rhskIZV X-Proofpoint-UnRewURL: 0 URL was un-rewritten MIME-Version: 1.0 X-HPE-SCL: -1 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.182.1,Aquarius:18.0.790,Hydra:6.0.425,FMLib:17.0.607.475 definitions=2021-10-27_07,2021-10-26_01,2020-04-07_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 adultscore=0 phishscore=0 clxscore=1015 mlxscore=0 suspectscore=0 lowpriorityscore=0 impostorscore=0 mlxlogscore=773 bulkscore=0 malwarescore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2110150000 definitions=main-2110280005 Content-Transfer-Encoding: 8bit EDKII Redfish Platform Config Protocol is an abstract driver that abstracts the platform configuration format and storage from EDK2 Redfish Feature driver. This protocol provides the interfaces to get and set platform configuration with the format and configuration storage agnostic to the Redfish feature driver. The platform can provide its own EDKII Redfish Platform Config driver instance to access platform-specific configuration format and storage. On EDK2 open source, EDKII Redfish Platform Config Protocol accesses the platform configuration in EDK2 HII defined format. Refer to below link for he architecture design, https://github.com/tianocore/edk2-staging/tree/edk2-redfish-client/RedfishClientPkg#edkii-redfish-platform-config-protocol-6 Signed-off-by: Nickle Wang Cc: Abner Chang Cc: Liming Gao Abner Chang (5): edk2-staging/RedfishPkg: EDKII_REDFISH_PLATFORM_CONFIG_PROTOCOL edk2-staging/RedfishPkg: HII utility helper library edk2-staging/RedfishPkg: Implementation of EDKII_REDFISH_PLATFORM_CONFIG_PROTOCOL edk2-staging/RedfishPkg: Helper library of EDKII_REDFISH_PLATFORM_CONFIG_PROTOCOL edk2-staging/RedfishPkg: Enable Redfish Platform Config Protocol build process RedfishPkg/RedfishPkg.dec | 12 + RedfishPkg/RedfishComponents.dsc.inc | 2 + RedfishPkg/RedfishLibs.dsc.inc | 2 + RedfishPkg/RedfishPkg.dsc | 4 + .../Library/HiiUtilityLib/HiiUtilityLib.inf | 61 + .../RedfishPlatformConfigLib.inf | 41 + .../RedfishPlatformConfigDxe.inf | 53 + RedfishPkg/Include/Library/HiiUtilityLib.h | 1195 ++++ .../Library/RedfishPlatformConfigLib.h | 101 + .../Protocol/EdkIIRedfishPlatformConfig.h | 147 + .../Library/HiiUtilityLib/HiiExpression.h | 190 + .../Library/HiiUtilityLib/HiiInternal.h | 371 ++ .../RedfishPlatformConfigInternal.h | 31 + .../RedfishPlatformConfigDxe.h | 64 + .../RedfishPlatformConfigImpl.h | 274 + .../Library/HiiUtilityLib/HiiExpression.c | 1367 +++++ .../Library/HiiUtilityLib/HiiIfrParse.c | 2671 +++++++++ .../HiiUtilityLib/HiiUtilityInternal.c | 5045 +++++++++++++++++ .../Library/HiiUtilityLib/HiiUtilityLib.c | 855 +++ .../RedfishPlatformConfigLib.c | 243 + .../RedfishPlatformConfigDxe.c | 1304 +++++ .../RedfishPlatformConfigImpl.c | 1240 ++++ RedfishPkg/Redfish.fdf.inc | 2 + 23 files changed, 15275 insertions(+) create mode 100644 RedfishPkg/Library/HiiUtilityLib/HiiUtilityLib.inf create mode 100644 RedfishPkg/Library/RedfishPlatformConfigLib/RedfishPlatformConfigLib.inf create mode 100644 RedfishPkg/RedfishPlatformConfigDxe/RedfishPlatformConfigDxe.inf create mode 100644 RedfishPkg/Include/Library/HiiUtilityLib.h create mode 100644 RedfishPkg/Include/Library/RedfishPlatformConfigLib.h create mode 100644 RedfishPkg/Include/Protocol/EdkIIRedfishPlatformConfig.h create mode 100644 RedfishPkg/Library/HiiUtilityLib/HiiExpression.h create mode 100644 RedfishPkg/Library/HiiUtilityLib/HiiInternal.h create mode 100644 RedfishPkg/Library/RedfishPlatformConfigLib/RedfishPlatformConfigInternal.h create mode 100644 RedfishPkg/RedfishPlatformConfigDxe/RedfishPlatformConfigDxe.h create mode 100644 RedfishPkg/RedfishPlatformConfigDxe/RedfishPlatformConfigImpl.h create mode 100644 RedfishPkg/Library/HiiUtilityLib/HiiExpression.c create mode 100644 RedfishPkg/Library/HiiUtilityLib/HiiIfrParse.c create mode 100644 RedfishPkg/Library/HiiUtilityLib/HiiUtilityInternal.c create mode 100644 RedfishPkg/Library/HiiUtilityLib/HiiUtilityLib.c create mode 100644 RedfishPkg/Library/RedfishPlatformConfigLib/RedfishPlatformConfigLib.c create mode 100644 RedfishPkg/RedfishPlatformConfigDxe/RedfishPlatformConfigDxe.c create mode 100644 RedfishPkg/RedfishPlatformConfigDxe/RedfishPlatformConfigImpl.c -- 2.21.0.windows.1