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.57]) by mx.groups.io with SMTP id smtpd.web11.33210.1681895362948893001 for ; Wed, 19 Apr 2023 02:09:23 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="body hash did not verify" header.i=@nvidia.com header.s=selector2 header.b=qI3kNAyG; 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.57, mailfrom: nicklew@nvidia.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Is4mUP0dlYQ6wKD4akCxWUaA1PG4ahGd2w3kRWJDLLv+zSplUebeiVL2dTfgljTve882kWabw1u8WRzCT0R2j62etYCS3+5Am2EJPwHAthAkrPZU82wQD0A3C/93t+EONYrn3or+mzrQnpVXlpKM43IJsYfAl0BKEI4kLVTtm3VJVTc8DjyWTWnsFZo8DszBb3bQq96eRpFN2mLFkfjGGsi/deYE1SgBvfnDN+mTnh+1wyEIGdKPdNU5fQp3PPF+kBwQPPufy30l0Rf935H96px3LvaGoJi/WChnI+eBuYCbJaaDuGIIdKoGYQz4hbUK7HWIQdi4sCl6ljklJXOD+g== 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=vH64j0DvvqeSPuAA0F+ypYphyp4cM+v624eB8B3TkYU=; b=a/LUQkmxyg2bChzxv6mfbwrjawotx8NotOcpVtfjaK6Dg31FAbULjmTuZkHVuKFBHu7+Pdp84pcmeNrXJluzjNuNxTCvXZAgv7bNkIS216B2/Qpdj1sF9DdWVRGpxfwVGVBk0SATdY3YaeGqptAPwNTYlcWqmjzGQO8Mpftf2m7ZUKJmOR5xLghNaeBYqQUF/gczNBqMS9+POdcZvfWWJS9T7nBiN5meWBszRzLlwO9kmRtAdmWCJqmJ43+FoaFDyjSMGibWfzrdXZ5WGX/Y7BHt8sVK/m4dPJu/NRYmtQ0StKe7xRL/dj0lSwOBKFHAtlqgfUPdZ2RzZXv+cYZwsg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) 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=vH64j0DvvqeSPuAA0F+ypYphyp4cM+v624eB8B3TkYU=; b=qI3kNAyGC21Drj7GzCWe+l+gAZdbtGbGb8GdE1Vilyzq4IedbSyUUCIGB6UQqeri3HQ4XrxJIyl+ld327i7enAfqnhi71xXpszz9Bw/wwbPxdfYFQWezupNYYI9bPy/x/HHWmQU/b4GuTIfuAlx7hs9ppgOu7UAEiBj/vB8Oy8/f8K65E6oHzYs4VFAUQRqNsauote3/RTIVqWZ5A9c8vI1+irc8rf7pDhvmSQ0ikXl0d9FQPfnYLJbZDOHPaFvDquDzA48F0adHRjvC/6LbxWVZM3CD/ZBEhqLZn41JVB3liwMr0ox5x1Hmj5/DUi0rH4dDFbb4DNJ47phfqiNRng== Received: from BN9PR03CA0659.namprd03.prod.outlook.com (2603:10b6:408:13b::34) by CY8PR12MB7515.namprd12.prod.outlook.com (2603:10b6:930:93::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.45; Wed, 19 Apr 2023 09:09:21 +0000 Received: from BN8NAM11FT111.eop-nam11.prod.protection.outlook.com (2603:10b6:408:13b:cafe::ec) by BN9PR03CA0659.outlook.office365.com (2603:10b6:408:13b::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6319.22 via Frontend Transport; Wed, 19 Apr 2023 09:09:20 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) 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.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by BN8NAM11FT111.mail.protection.outlook.com (10.13.177.54) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6319.22 via Frontend Transport; Wed, 19 Apr 2023 09:09:20 +0000 Received: from rnnvmail204.nvidia.com (10.129.68.6) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.5; Wed, 19 Apr 2023 02:09:04 -0700 Received: from rnnvmail205.nvidia.com (10.129.68.10) by rnnvmail204.nvidia.com (10.129.68.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.37; Wed, 19 Apr 2023 02:09:03 -0700 Received: from NV-CL38DL3.nvidia.com (10.127.8.14) by mail.nvidia.com (10.129.68.10) with Microsoft SMTP Server id 15.2.986.37 via Frontend Transport; Wed, 19 Apr 2023 02:09:03 -0700 From: "Nickle Wang" To: CC: Abner Chang , Igor Kulchytskyy , "Nick Ramirez" Subject: [PATCH v3 0/5] Introduce EDKII Redfish Platform Config Protocol Date: Wed, 19 Apr 2023 17:09:02 +0800 Message-ID: <20230419090902.49-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: BN8NAM11FT111:EE_|CY8PR12MB7515:EE_ X-MS-Office365-Filtering-Correlation-Id: 75101737-9b75-4bd1-437b-08db40b5c2ee X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: aFfdZ6mTN9z8F8CUi7ZJ83rLIZYn65+tUyxawVW8QrYHtRLdjQ0SO1RypL4gg1a5moFcr71awL3GxAabMlJhzkUIhD2y1/UfzmyLnYky45hon9vAeSNpQYbHJ/CZfplmKGx3V7UqWJlbnmrkEnQwqLrxPtPFtmJ3ThU5B1Dy/QzYaOkGaRqDYacqyOyzT/JCwODX2xFnHg9HqLUwcRzzMlXyLSExEEqQN7i+zNYvAfPTpy4DjKtFe7/r2m83HrQ1OC7LF9duQGMA6wI6hBM+FzVZ4t0pQKBt2vpOuBeM7UgGZjAt2FRcVzb1g4OGNpCzs36PrrS5lR5dYLpcNmBqxlL5ESydlZsbPQTwqOpU76sIk0wP5ps/IJrU7+5T087PREpQJDM/gSFBHmuiyJjz43al6PTvF//qkTEq8IHpz3k2lURaFsMW9dVR0fX1q1gvVCGEDw4sd/AiSnsG73gYxAIuEbtPoy0NA9KL8xfmQoJfkvWkCgisiSAfVxLrjBlfP41QkLxK+8VeAv9LPLZnbhx7S0pSEyg6QcyweEO3ctS8aLGeJpR7xrI/lasDQjFdJYbTRfbyjXebQv9/zvyDCZiULDrDXjhr8D8YcETlNlyrnj3Tr7OANDRJQp7lsfHLSolF2LYKrgHvYUuiQu5muWOUMyMc2on481sLuXmNkxqLLEUttQSrcBV6/Lw/sp1XlpLMlKuR4oBq1W7i4psbdVhBXYkBhWOJrGg6MsapPvgyWHO/okKEwHgOad1Nuyof5X5KFDetdeDDbJbmSyZoUsBSh0A5NjANLQnByg+cJ8k= X-Forefront-Antispam-Report: CIP:216.228.117.160;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge1.nvidia.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(376002)(136003)(346002)(39860400002)(451199021)(46966006)(36840700001)(40470700004)(36756003)(4326008)(54906003)(316002)(6916009)(70586007)(70206006)(41300700001)(478600001)(5660300002)(8936002)(82310400005)(8676002)(2906002)(40480700001)(34070700002)(82740400003)(86362001)(426003)(356005)(336012)(2616005)(107886003)(1076003)(40460700003)(26005)(36860700001)(47076005)(7636003)(186003)(7696005);DIR:OUT;SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Apr 2023 09:09:20.4522 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 75101737-9b75-4bd1-437b-08db40b5c2ee X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.160];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT111.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7515 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 | 62 + .../RedfishPlatformConfigLib.inf | 41 + .../RedfishPlatformConfigDxe.inf | 55 + RedfishPkg/Include/Library/HiiUtilityLib.h | 1204 ++++ .../Library/RedfishPlatformConfigLib.h | 143 + .../Protocol/EdkIIRedfishPlatformConfig.h | 257 + .../Library/HiiUtilityLib/HiiExpression.h | 191 + .../Library/HiiUtilityLib/HiiInternal.h | 376 ++ .../RedfishPlatformConfigInternal.h | 35 + .../RedfishPlatformConfigDxe.h | 81 + .../RedfishPlatformConfigImpl.h | 334 + .../Library/HiiUtilityLib/HiiExpression.c | 1439 ++++ .../Library/HiiUtilityLib/HiiIfrParse.c | 2715 ++++++++ .../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, 17706 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