From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (NAM11-DM6-obe.outbound.protection.outlook.com [40.107.223.75]) by mx.groups.io with SMTP id smtpd.web11.6028.1681366847617967531 for ; Wed, 12 Apr 2023 23:20:47 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="body hash did not verify" header.i=@nvidia.com header.s=selector2 header.b=lcxbFm5L; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: nvidia.com, ip: 40.107.223.75, mailfrom: nicklew@nvidia.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lb681TdRnA2PFyltxCOLnSUxxTDFNA82jzI/83biHdGawWDOyWV1xnaGGgKAbrQ7JttbSsySsQqMfW8gJ4ut0JtYpgxhhOcRrCRre+kXWfhdOzeqzUYbt8TgIJZwhh4mUmrU3PG4f0zS9jIscb4UZ7hADenZkmIsErvHlfVw9/aZf+rVdHFg0yMoeFqcn4N+tlcmSgS1xzGEFwMLzXwnF8/XjOgjsNgXSa/EfzG2ZRofe5i5/536PfdKNAkwV/pqvgZAkND1mR4bORCgWjioZ1+KCUlDjpjXG7nDeEX6sAQ9v1XQrlKzBCQM8uf+D0oIjzCyjCc9UgyxBybo4ShiYA== 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=R+UltSvT1VaP4lzUeu9NxYYbmcobxYHc/RhjgEXXAcA=; b=aoHMQIi3XUki8CIOJCLs1HRBh9LK0rejaVA/72GVmeifJJTPAeGWMR369DUjSX76ISFtl4O8qb1sTxymhLrjOKz0xuPwBo3QvuK/OBMs8xCBYvpkTK9rWRLIzl2su44Ab0iQx3f6LU4Far/G0z5xEajhqssaUuP20S9ONfCItS9zY1SZXONbF3pzzm0qhUyk5J/TB61APD6KT97YvM+TDbD5wwpmN42aOLrD1vTZ3hN4MbL0I1hzrI4hlq5rd4PUcTSQz69d2i3ag7eZwQCOEXA6oLNpYvdq/9cYuwuB5g+B7DMGKKqGXdjm2CAiVaqarBK6v4CKv9laPYeE5zTW8w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.118.232) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=R+UltSvT1VaP4lzUeu9NxYYbmcobxYHc/RhjgEXXAcA=; b=lcxbFm5Lwq7+Fhp1wwqRSyytBRnGHojYaH18J0n2q5Idxrp5gSGdT0an8OI2T4F1sLGdE+D/HauHxKsVreCaLnw1LsMiwU7/veoaRi8X9uQ+SxIv3QUTya1yz9r0dY3GYPrWGDflqLADAQMe9pwkHtq0gAxySph2ifHCmD6g369FzASqldvxKwQpiQUxa99Ha47FnZxmjqmMYzDETUM3TrSACzEnyu4Lsg6ZFVC97xNsUwaIZYvFaQ884lv9MYoPywV57krczc2zK+cuQv7UFkTCUZGl7/WMZHFgZwXg+ya2UShUz3aKmhuECKr6fZzkmcThKo8qkx3jTeuyTtLsNQ== Received: from BN0PR04CA0102.namprd04.prod.outlook.com (2603:10b6:408:ec::17) by DM4PR12MB6135.namprd12.prod.outlook.com (2603:10b6:8:ac::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6277.36; Thu, 13 Apr 2023 06:20:46 +0000 Received: from BN8NAM11FT091.eop-nam11.prod.protection.outlook.com (2603:10b6:408:ec:cafe::4f) by BN0PR04CA0102.outlook.office365.com (2603:10b6:408:ec::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.30 via Frontend Transport; Thu, 13 Apr 2023 06:20:45 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.118.232) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.118.232 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.118.232; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.118.232) by BN8NAM11FT091.mail.protection.outlook.com (10.13.176.134) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.31 via Frontend Transport; Thu, 13 Apr 2023 06:20:45 +0000 Received: from drhqmail202.nvidia.com (10.126.190.181) by mail.nvidia.com (10.127.129.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.5; Wed, 12 Apr 2023 23:20:30 -0700 Received: from drhqmail203.nvidia.com (10.126.190.182) by drhqmail202.nvidia.com (10.126.190.181) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.37; Wed, 12 Apr 2023 23:20:29 -0700 Received: from NV-CL38DL3.nvidia.com (10.127.8.11) by mail.nvidia.com (10.126.190.182) with Microsoft SMTP Server id 15.2.986.37 via Frontend Transport; Wed, 12 Apr 2023 23:20:28 -0700 From: "Nickle Wang" To: CC: Abner Chang , Igor Kulchytskyy , "Nick Ramirez" Subject: [PATCH 0/5] Introduce EDKII Redfish Platform Config Protocol Date: Thu, 13 Apr 2023 14:20:22 +0800 Message-ID: <20230413062022.1562-1-nicklew@nvidia.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 Return-Path: nicklew@nvidia.com X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN8NAM11FT091:EE_|DM4PR12MB6135:EE_ X-MS-Office365-Filtering-Correlation-Id: 5f2be359-8b13-4d30-bfd3-08db3be7375a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9+oEHJbFa7jRDbHNRl1SOXIRT6n3DVKD3zLHvQL2gMmD0u9Oy9cuZ7OM6CnE/gSKVFfSqGcEVp2AyInx0tXLEu08xELUdsy2LhU7Ub/EYZqoI3Vsq7ovgbednYK/pzGZdve4AOFA7QdETkD8+VyqhNdcQ0rwu/p+/GbO9uTxGunYnK/M+cQ7jVqSoz2Yx1sHuxrmIqxcNBl88JEXUtt1OyBm1jYaiIQbjfj2qe/QRPzBS8rGJzFz/kypLmdcxq5IbYRbn0yFWEnCDLRpIOXIJANOLR2p1+ffzRDVoc9foLPCFgFnsIywLHtVOf8DO4lr0YdSw5XYfGmC3DjXVqq8nzzgw7v7lGLC6w0IuHuYX8uJiCvv4E0/yBSBiKEr6CSVNFmisaia5UYNgDij5pSDQUHGVXc3NbiuMOMKq1k89VrnGmppsY3DDJCYQFjibBWKAmPwsRUFFOLr3jjCZ/I4djVfiRhQieigemzaolo/bGnyMNZmXHVDJC/GBPjV5GjSAyHEnfi7g7ksDpNbgCIPg25qxKLXYJHJQGmouS+rBhsQ0KNyp14w8RS9Xc92QrJEbxns7yk4X5Cw3NEH1ZvNJUZA8i73sABdZ3jbX33+C3cPCO83eId5IEVDjcaY77/t/mUmhoo25awQOYr4iNlBc+wqa8bSwrslg/gQX/bcmyGk+la+aloZEEZUXLceMx+/yejE1AZhsC92W9g8mFfc9psOCXDFz0OEmxrPuoNu1HIGxYtv34AzeiIpJY5qJ1eM1lmfPCr9HbrE7/xQyBYCGEt5XiVzz0bao+kj9yuLuRA= X-Forefront-Antispam-Report: CIP:216.228.118.232;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc7edge1.nvidia.com;CAT:NONE;SFS:(13230028)(4636009)(346002)(136003)(39860400002)(396003)(376002)(451199021)(36840700001)(46966006)(40470700004)(426003)(186003)(54906003)(36860700001)(316002)(7636003)(34020700004)(2616005)(6666004)(336012)(7696005)(478600001)(70586007)(41300700001)(70206006)(4326008)(82740400003)(6916009)(47076005)(356005)(107886003)(1076003)(26005)(8676002)(8936002)(5660300002)(36756003)(2906002)(82310400005)(40460700003)(86362001)(40480700001);DIR:OUT;SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2023 06:20:45.3360 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5f2be359-8b13-4d30-bfd3-08db3be7375a X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.118.232];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT091.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6135 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain Introduce EDKII Redfish Platform Config Protocol and corresponding=20 libraries. This protocol is the interface between UEFI platform=20 configuration and Redfish property. It could handle different firmware implementation and the implementation here is to map EDK2 HII questions to the properties defined in Redfish schema. So that user can configure UEFI platform configuration through RESTful interface provided by BMC. Signed-off-by: Nickle Wang Cc: Abner Chang Cc: Igor Kulchytskyy Cc: Nick Ramirez Nickle Wang (5): RedfishPkg: introduce EDKII_REDFISH_PLATFORM_CONFIG_PROTOCOL RedfishPkg: introduce HII utility helper library RedfishPkg: Implementation of EDKII_REDFISH_PLATFORM_CONFIG_PROTOCOL RedfishPkg: Helper library of EDKII_REDFISH_PLATFORM_CONFIG_PROTOCOL RedfishPkg: Add Redfish Platform Config Protocol to RedfishPkg RedfishPkg/RedfishPkg.dec | 12 + RedfishPkg/RedfishComponents.dsc.inc | 3 + 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 | 1205 ++++ .../Library/RedfishPlatformConfigLib.h | 143 + .../Protocol/EdkIIRedfishPlatformConfig.h | 257 + .../Library/HiiUtilityLib/HiiExpression.h | 214 + .../Library/HiiUtilityLib/HiiInternal.h | 369 ++ .../RedfishPlatformConfigInternal.h | 31 + .../RedfishPlatformConfigDxe.h | 77 + .../RedfishPlatformConfigImpl.h | 334 + .../Library/HiiUtilityLib/HiiExpression.c | 1442 ++++ .../Library/HiiUtilityLib/HiiIfrParse.c | 2717 ++++++++ .../HiiUtilityLib/HiiUtilityInternal.c | 5770 +++++++++++++++++ .../Library/HiiUtilityLib/HiiUtilityLib.c | 810 +++ .../RedfishPlatformConfigLib.c | 310 + .../RedfishPlatformConfigDxe.c | 2495 +++++++ .../RedfishPlatformConfigImpl.c | 1364 ++++ RedfishPkg/Redfish.fdf.inc | 3 + 23 files changed, 17717 insertions(+) create mode 100644 RedfishPkg/Library/HiiUtilityLib/HiiUtilityLib.inf create mode 100644 RedfishPkg/Library/RedfishPlatformConfigLib/RedfishPlat= formConfigLib.inf create mode 100644 RedfishPkg/RedfishPlatformConfigDxe/RedfishPlatformConf= igDxe.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/RedfishPlat= formConfigInternal.h create mode 100644 RedfishPkg/RedfishPlatformConfigDxe/RedfishPlatformConf= igDxe.h create mode 100644 RedfishPkg/RedfishPlatformConfigDxe/RedfishPlatformConf= igImpl.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/RedfishPlat= formConfigLib.c create mode 100644 RedfishPkg/RedfishPlatformConfigDxe/RedfishPlatformConf= igDxe.c create mode 100644 RedfishPkg/RedfishPlatformConfigDxe/RedfishPlatformConf= igImpl.c --=20 2.17.1