From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (NAM12-MW2-obe.outbound.protection.outlook.com [40.107.244.89]) by mx.groups.io with SMTP id smtpd.web10.4724.1679368854623997023 for ; Mon, 20 Mar 2023 20:20:55 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="body hash did not verify" header.i=@amd.com header.s=selector1 header.b=Lnc59Uxn; 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.244.89, mailfrom: abner.chang@amd.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jvoLiMRGzcjVlf4+bU4vUVC1i2HObKf1X5MH/v5bnz7vwungQfJ9TBF/7fFy3si0sDD7SIVOprUkaHffNKbEeON8ALVP1Q6bDxzrswHaB68mMMfuqxClGeaTE0otD3IH5i56hElJFgxsg56qX3qU6sQe5pQA7q9IZQKUfeRsVJ6BQ3B+1roEyYMmb3RBIoCqtBYmn8HJikZEysC36k4YfWHcMElmPcsp6Shic08AU07cBSR1PW2XZRjYRV9JN7yRihgww7LzNbc+sK7EEzho51m1p63uFUf0iYGpWqCFM3RoJ7yc9oZhYMryUtyOK9GkvWzBTN3Qn6FdvoHWaMIUrQ== 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=6eFXbQxbe+S0vVICODceHdT1i/pdkRUlu9JXr3MC2sY=; b=Dos7wLziIx7KeWK4NK1gUZmByjSGxrlhX6HniCD9vtNAomgh3JcwaArMuVWExLV01NZyb0n2uKVMXpUOCkf4JkIkN6zGccJQSg8DN4HqeG0td6znEEksm8UqdsLv9WmLb04rWmgHBrZAMOMT8wf8yvQUI49GO0R7On0H1pPhoWy9cBPOYj+4lhSufs16HUGTIR3psccmvca+tptQoRrS9GvUnk1vK9g1ugdJ+rQCedvL9kECFctDhuykw1E5EHjNaGyZkFql5nh0mqWISBgKXu/KWQvP8vTNVL9Gc2kG6yNTpkbyD+sK8zXey7qalXdZPZrAJ4aE5vDDIjjCSKO2tw== 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=6eFXbQxbe+S0vVICODceHdT1i/pdkRUlu9JXr3MC2sY=; b=Lnc59UxnOljq7Am+hFgkjz6T9E25V/0xFC/+vk1vFegy7yTIGJRQod9vmpBEVpl+p8vej5blqEytB6BbiIeNQc8yBiY2n7xuGeuYOFHah8YPPSLX3kjERFqOPAsDTXMv4no8cZL4ICHWsjZVRCjts3ABaEhOhpx11+RdEOjWXrg= Received: from BN9PR03CA0164.namprd03.prod.outlook.com (2603:10b6:408:f4::19) by CY5PR12MB6645.namprd12.prod.outlook.com (2603:10b6:930:42::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.37; Tue, 21 Mar 2023 03:20:52 +0000 Received: from BN8NAM11FT099.eop-nam11.prod.protection.outlook.com (2603:10b6:408:f4:cafe::2c) by BN9PR03CA0164.outlook.office365.com (2603:10b6:408:f4::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.37 via Frontend Transport; Tue, 21 Mar 2023 03:20:52 +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 BN8NAM11FT099.mail.protection.outlook.com (10.13.177.197) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6222.16 via Frontend Transport; Tue, 21 Mar 2023 03:20:51 +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 22:20:49 -0500 From: "Chang, Abner" To: CC: Abdul Lateef Attar , Leif Lindholm , Michael D Kinney , Liming Gao , Isaac Oram , Nickle Wang Subject: [PATCH v3 0/8] Introduce ManageabilityPkg Date: Tue, 21 Mar 2023 11:20:33 +0800 Message-ID: <20230321032033.1921-1-abner.chang@amd.com> X-Mailer: git-send-email 2.37.1.windows.1 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: BN8NAM11FT099:EE_|CY5PR12MB6645:EE_ X-MS-Office365-Filtering-Correlation-Id: 764726a5-9ce0-472e-a58e-08db29bb462c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: OBjhUpFQbvLfO29TCkmGTxxDr0LiHdMLeoxdK2rByzSlgz4fIUCgMcN2HLqS1fU0jbzv3gNxBvbje7o+je5QJQR5ZeMeu9yw9Zu4mxkqtj+Jngl9QLPos52oUc2jyeyYcpDfmJihXR8YNKzfEOWT/cSU+tKn/qAEF6MetO9L+3HUTsPwTp/aLJFn4rwrgj+SAxU5siumjMX1YZmMVug9OWvkehwNCD80srVtJkeZCl8zmy7oRT3P13Q87ctBDGUCjPyIaVeJSvuR0R3E8Kes/Y1ZmbVUVVdnvx4jCyjIk7agch5Qnv/Uwaq9tHklVNTjNIh1f+C3lE0ZguIi9HC7p+c/I/EdqdWVMtx67wGvNVZw69ve+KXkZniw+BPaYc5W22dwxgb0EjzrzKV+1fMs1pCXoY5LIuw7GaaI7DlK0UuELcCAxGHXZVdksmkZiO+smJtIMb76qHxla7vE8i6j0yHex8AAOnIkU7kVdtTn3puG+AVy2yYIAs+S0N7ZOt6YW3hBTjxJFx6qhCX2rIRwG1/l5gE07Z/fLMcUFZOM4lkUm1DMxWMlrzH5fJDSBCdB8fsryTDpRnna5glPtPzVhfk/VFAxd5rws8g0XpbwtKQvLqtd1BKBpE0GYLSESCiC1CCvW3XwXBq0zzIA3kHRGu6OjjKOq3Iit3cSQFUiTBQayVsC3QZpVAyzCM7UxETJCP5IicebA2iqjNmAZ05UpeOg1aoovCD1bwXJtQbFTc8= 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)(396003)(346002)(39860400002)(136003)(376002)(451199018)(36840700001)(40470700004)(46966006)(2876002)(426003)(47076005)(7696005)(86362001)(54906003)(70586007)(40480700001)(316002)(6916009)(70206006)(36860700001)(36756003)(4326008)(8676002)(5660300002)(41300700001)(8936002)(2906002)(478600001)(82740400003)(81166007)(82310400005)(40460700003)(83380400001)(356005)(6666004)(336012)(2616005)(16526019)(186003)(26005)(1076003)(966005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Mar 2023 03:20:51.5542 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 764726a5-9ce0-472e-a58e-08db29bb462c 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: BN8NAM11FT099.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6645 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain From: Abner Chang edk2 ManageabilityPkg is introduced to provide edk2 drivers and libraries for industry platform management standards, such as PLDM (Platform Level Data Model), MCTP (Management Component Transfer Protocol), IPMI (Intelligent Platform Management Interface) and others. The framework of ManageabilityPkg is designed to flexibly support the transport interfaces for above industry standards, the transport interfaces such as KCS or I2C for IPMI, PCI VDM (Vendor Defined Message), I2C or KCS for MCTP, or the OEM proprietary transports. Please check the Readme file for the design guidance: https://github.com/changab/edk2-platforms/blob/Manageability_IPMI_upstream/= Features/ManageabilityPkg/Readme.md In V3: 1. Address reviewers commnets on V2. 2. Revise IpmiPpi driver to not using global vriable. In V2: Fix some issues on below files, 1. Features/ManageabilityPkg/Library/Common/KcsCommon.c 2. Features/ManageabilityPkg/Library/Dxe/ManageabilityTransportKcs.c 3. Features/ManageabilityPkg/Universal/IpmiProtocol/Common/IpmiprotocolCo= mmon.c In V1, we had implemented, - KCS manageability transport library - Manageability library helper library - IPMI PEI/DXE/SMM protocol implementations Next upstream would be edk2 MCTP_PROTOCOL implementation that also consumes the manageability transport libraries. Signed-off-by: Abner Chang Cc: Abdul Lateef Attar Cc: Leif Lindholm Cc: Michael D Kinney Cc: Liming Gao Cc: Isaac Oram Cc: Nickle Wang Abner Chang (8): ManageabilityPkg: Add Readme file ManageabilityPkg: Initial package ManageabilityPkg: Add NULL ManageabilityTransportLib ManageabilityPkg: Add ManageabilityTransportHelperLib ManageabilityPkg/ManageabilityTransportKcsLib ManageabilityPkg: Implement Ipmi Protocol/Ppi ManageabilityPkg: Add IpmiProtocol to Manageability Package edk2-platforms: Maintainers.txt .../ManageabilityPkg/ManageabilityPkg.dec | 48 ++ .../Include/Dsc/Manageability.dsc | 25 + .../ManageabilityPkg/ManageabilityPkg.dsc | 45 ++ .../BaseManageabilityTransportHelper.inf | 41 + .../BaseManageabilityTransportNull.inf | 28 + .../Dxe/DxeManageabilityTransportKcs.inf | 44 + .../IpmiProtocol/Dxe/IpmiProtocolDxe.inf | 50 ++ .../Universal/IpmiProtocol/Pei/IpmiPpiPei.inf | 53 ++ .../IpmiProtocol/Smm/IpmiProtocolSmm.inf | 52 ++ .../Library/ManageabilityTransportHelperLib.h | 93 +++ .../Library/ManageabilityTransportIpmiLib.h | 24 + .../Library/ManageabilityTransportLib.h | 336 ++++++++ .../Common/ManageabilityTransportKcs.h | 105 +++ .../IpmiProtocol/Common/IpmiProtocolCommon.h | 108 +++ .../IpmiProtocol/Pei/IpmiPpiInternal.h | 25 + .../BaseManageabilityTransportHelper.c | 261 ++++++ .../BaseManageabilityTransportNull.c | 64 ++ .../Common/KcsCommon.c | 502 ++++++++++++ .../Dxe/ManageabilityTransportKcs.c | 389 +++++++++ .../IpmiProtocol/Common/IpmiProtocolCommon.c | 252 ++++++ .../Universal/IpmiProtocol/Dxe/IpmiProtocol.c | 177 +++++ .../Universal/IpmiProtocol/Pei/IpmiPpi.c | 159 ++++ .../Universal/IpmiProtocol/Smm/IpmiProtocol.c | 147 ++++ Features/ManageabilityPkg/Readme.md | 177 +++++ .../Media/ManageabilityDriverStack.svg | 752 ++++++++++++++++++ .../BaseManageabilityTransportHelper.uni | 13 + .../BaseManageabilityTransportNull.uni | 13 + .../Dxe/ManageabilityTransportKcs.uni | 13 + Maintainers.txt | 11 +- 29 files changed, 4005 insertions(+), 2 deletions(-) create mode 100644 Features/ManageabilityPkg/ManageabilityPkg.dec create mode 100644 Features/ManageabilityPkg/Include/Dsc/Manageability.dsc create mode 100644 Features/ManageabilityPkg/ManageabilityPkg.dsc create mode 100644 Features/ManageabilityPkg/Library/BaseManageabilityTran= sportHelperLib/BaseManageabilityTransportHelper.inf create mode 100644 Features/ManageabilityPkg/Library/BaseManageabilityTran= sportNullLib/BaseManageabilityTransportNull.inf create mode 100644 Features/ManageabilityPkg/Library/ManageabilityTranspor= tKcsLib/Dxe/DxeManageabilityTransportKcs.inf create mode 100644 Features/ManageabilityPkg/Universal/IpmiProtocol/Dxe/Ip= miProtocolDxe.inf create mode 100644 Features/ManageabilityPkg/Universal/IpmiProtocol/Pei/Ip= miPpiPei.inf create mode 100644 Features/ManageabilityPkg/Universal/IpmiProtocol/Smm/Ip= miProtocolSmm.inf create mode 100644 Features/ManageabilityPkg/Include/Library/Manageability= TransportHelperLib.h create mode 100644 Features/ManageabilityPkg/Include/Library/Manageability= TransportIpmiLib.h create mode 100644 Features/ManageabilityPkg/Include/Library/Manageability= TransportLib.h create mode 100644 Features/ManageabilityPkg/Library/ManageabilityTranspor= tKcsLib/Common/ManageabilityTransportKcs.h create mode 100644 Features/ManageabilityPkg/Universal/IpmiProtocol/Common= /IpmiProtocolCommon.h create mode 100644 Features/ManageabilityPkg/Universal/IpmiProtocol/Pei/Ip= miPpiInternal.h create mode 100644 Features/ManageabilityPkg/Library/BaseManageabilityTran= sportHelperLib/BaseManageabilityTransportHelper.c create mode 100644 Features/ManageabilityPkg/Library/BaseManageabilityTran= sportNullLib/BaseManageabilityTransportNull.c create mode 100644 Features/ManageabilityPkg/Library/ManageabilityTranspor= tKcsLib/Common/KcsCommon.c create mode 100644 Features/ManageabilityPkg/Library/ManageabilityTranspor= tKcsLib/Dxe/ManageabilityTransportKcs.c create mode 100644 Features/ManageabilityPkg/Universal/IpmiProtocol/Common= /IpmiProtocolCommon.c create mode 100644 Features/ManageabilityPkg/Universal/IpmiProtocol/Dxe/Ip= miProtocol.c create mode 100644 Features/ManageabilityPkg/Universal/IpmiProtocol/Pei/Ip= miPpi.c create mode 100644 Features/ManageabilityPkg/Universal/IpmiProtocol/Smm/Ip= miProtocol.c create mode 100644 Features/ManageabilityPkg/Readme.md create mode 100644 Features/ManageabilityPkg/Documents/Media/Manageability= DriverStack.svg create mode 100644 Features/ManageabilityPkg/Library/BaseManageabilityTran= sportHelperLib/BaseManageabilityTransportHelper.uni create mode 100644 Features/ManageabilityPkg/Library/BaseManageabilityTran= sportNullLib/BaseManageabilityTransportNull.uni create mode 100644 Features/ManageabilityPkg/Library/ManageabilityTranspor= tKcsLib/Dxe/ManageabilityTransportKcs.uni --=20 2.37.1.windows.1