From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail05.groups.io (mail05.groups.io [45.79.224.7]) by spool.mail.gandi.net (Postfix) with ESMTPS id 5E87D74003A for ; Wed, 1 May 2024 19:05:48 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=MgaNUTg5Glp/jMvc3TU3oyDz7oq7XBcoD41RAlMVqck=; c=relaxed/simple; d=groups.io; h=Received-SPF:From:To:CC:Subject:Date:Message-ID:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Resent-Date:Resent-From:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding:Content-Type; s=20240206; t=1714590347; v=1; b=4MH3sj21QeTpnPtZQ7kiXR8WCdivcrnNL+ApQx58iclWhtIEiEZ4UeC2CK6ewTxj//TWfx22 iTzQO8x1KbGWhc2NOxmPNiM0a6pRDKV0vhwRFqeO8pelZXJvRUbjP1ZJFPN3WuXoX4L6OGjfj2Q NLLcRU1vnCxegyuq6BNjP57W3LCx/RWiSs/+QLA6DCt1Uguig8TQTnxPQy5Md7lzufooNfd8E9S er58pkWhiitPy4AdGkH9sNffwUbexWjzamOYDn1eCjNJsDZ8tB7RyP4H/LVG2rYX/XKiG46l6L/ cY5VlljCgQK76qdcLfv0WzQaQFBT1kGqbFMGz8igR7Fdw== X-Received: by 127.0.0.2 with SMTP id gfxAYY7687511xuC2RDUBA5q; Wed, 01 May 2024 12:05:47 -0700 X-Received: from NAM04-DM6-obe.outbound.protection.outlook.com (NAM04-DM6-obe.outbound.protection.outlook.com [40.107.102.82]) by mx.groups.io with SMTP id smtpd.web11.5057.1714590346350843727 for ; Wed, 01 May 2024 12:05:46 -0700 X-Received: from SJ0PR05CA0094.namprd05.prod.outlook.com (2603:10b6:a03:334::9) by SN7PR12MB8101.namprd12.prod.outlook.com (2603:10b6:806:321::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7519.34; Wed, 1 May 2024 19:05:43 +0000 X-Received: from SJ5PEPF000001CD.namprd05.prod.outlook.com (2603:10b6:a03:334:cafe::a7) by SJ0PR05CA0094.outlook.office365.com (2603:10b6:a03:334::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.24 via Frontend Transport; Wed, 1 May 2024 19:05:43 +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 X-Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001CD.mail.protection.outlook.com (10.167.242.42) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.7544.18 via Frontend Transport; Wed, 1 May 2024 19:05:43 +0000 X-Received: from AUS-BIOSDEV-68.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.2507.35; Wed, 1 May 2024 14:05:42 -0500 From: "Chesley, Brit via groups.io" To: CC: Liming Gao , Ray Ni , "Abner Chang" , Abdul Lateef Attar Subject: [edk2-devel] [PATCH v1 0/6] SPI Driver Stack Date: Wed, 1 May 2024 14:05:21 -0500 Message-ID: <20240501190527.200937-1-brit.chesley@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001CD:EE_|SN7PR12MB8101:EE_ X-MS-Office365-Filtering-Correlation-Id: 70692f98-eb47-4f0f-7f92-08dc6a11b355 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?q681mDm5NgFc9cpcuHjcxwhO3SKVLagJoTXtw3HCzMsL0OmWMRb9RcE0dYlC?= =?us-ascii?Q?aAXKbPDI5Yt5zIbFEnOh2fMDeCQnwArZeev7NJNJIq/GnW/U+eOVamoPPyd4?= =?us-ascii?Q?ZjCX3WHIjorVQ5jNXVa1AWlIJKeE3QgT4zLdiYv0rQHl79pPND64lvmQKAlU?= =?us-ascii?Q?4gxlb0Qh/8C5EoDxWX3nUCq09c0wiyHeMmiN4dEuTBPdD/S8FDctWbl9vvdH?= =?us-ascii?Q?BV6et9jq56Fv5WIy86QA1+s6HyxFU3jfO1Jb72702mEwnhQ/9krauJMHE2Q1?= =?us-ascii?Q?VSgg0lpVgCq4YFMUehg7tear08rXwRAtunhCs6TgB5/fV9w0ZFg62jewkVJA?= =?us-ascii?Q?AnhxlvIx+4qhAHuGREFLBAuyMnCd6qkRFojiEVR1lVpmOwv1lheiJJ0nlcHy?= =?us-ascii?Q?B4P5zYaPD3M3+WwM1Np8qEIFDYK8sVXMuruQ+YZIWeHVFN8EPnoUg81pcy5U?= =?us-ascii?Q?6WoJEMV/i23xZq9TjUUDAyvfDtnXt+40YZt+jF1A+ulAXnokGSOjIS/y5CZk?= =?us-ascii?Q?vIsYkYC9Wl3UlVnVWTJ5aHo41k9h5GIoJ9KXgw45eN8vPDBtHUpjnS7SEFdH?= =?us-ascii?Q?qLrweYyLwupWEJ1Ub7vVsnTqVPBNtDUx3lsevu+a8+2L+t96NJ668NuqylDG?= =?us-ascii?Q?v+ha9Qf83z6+JvCj94ziKAVemdYSiFP9xWN7TQ1mzIbf9dqPbGwKQ4ZaIuZc?= =?us-ascii?Q?uuKMeZQUp8Gcqw2WG4xgbNlBSMsT7G/WsqPsOBYWVML5arh+ntOTY1KcPlx4?= =?us-ascii?Q?BzOOyjL8p02vzqAuR6P/hIj+v1d+kgIQZnkHpsPEVS3v3uZqMwfpNzm1Doly?= =?us-ascii?Q?QyOOYMV+GIMmrLRLwtE6p32ceQKmiWyhbttQpmFGtQm9E1gYI2lykTa54/z9?= =?us-ascii?Q?50aJVEykTkYdaw32qUu9UxiOZsuXu+7JsmGmBMZ3mhXXGD10lHbhd9ENSCvd?= =?us-ascii?Q?nuyjhNbo+ofCgXEAXxUA8Y04Ouk67W7DwjaIuSO3JLwvvhsp8D8jwUScfYZ1?= =?us-ascii?Q?puvWbp4afuuz6SJ7eqb1yNen1QP2uNTM/+Mu6BCvKc1ESNWM1WMgRL5Ls9g9?= =?us-ascii?Q?vbImBvXHpsGWfWCLYJl/YZx9lsj2P184yzyfeI2WkOyqinzW8aa5ndPyUiUt?= =?us-ascii?Q?REqf6NMWPeDdPrPH1Tq+YStt3z7o3oC8gH/6PMoL7Lv4+mZA+5iEvS9X+w8e?= =?us-ascii?Q?CTJaswITa1BF3W0SY6FfFy13rIdJMEsePUxbCZH005DwDgIiuw3K7mnbwN4J?= =?us-ascii?Q?9HT+zVjDbr3MiBOyBboQELLE72FAHwisUmwLF4zwqsdTktvtgw4w8FFpvu8j?= =?us-ascii?Q?E0d4sf/BOrjEloU4Sj+CFU/syV2MFrLzy9+GdZZo8dxjpTMsgSwVb5L0Nb8Y?= =?us-ascii?Q?81Mgg+dBSu3R7dIeoSC9RlMLFHKt?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 May 2024 19:05:43.4230 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 70692f98-eb47-4f0f-7f92-08dc6a11b355 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: SJ5PEPF000001CD.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB8101 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Resent-Date: Wed, 01 May 2024 12:05:46 -0700 Resent-From: brit.chesley@amd.com Reply-To: devel@edk2.groups.io,brit.chesley@amd.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: 6FnyzZ6sUDJ6wp2YJx9k7ICkx7686176AA= Content-Transfer-Encoding: quoted-printable Content-Type: text/plain X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20240206 header.b=4MH3sj21; dmarc=pass (policy=none) header.from=groups.io; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 45.79.224.7 as permitted sender) smtp.mailfrom=bounce@groups.io From: Brit Chesley This patchset introduces the SPI driver stack as defined in the Platform Initialization specification Volume 5 chapter 18 (DXE) and Volume 4 chapter 12 (SMM). The SPI stack decouples the SPI chip details from the SPI controller and SPI bus configuration details to enable silicon vendors to write drivers effectively. This patchset also introduces the SpiHcPlatformLib, which allows for OEMs to handle low level SPI host controller details while using the generic SPI bus/hc drivers. https://github.com/BritChesley/edk2/tree/SpiBusStack In PATCH v1: Fixed CI errors. Cc: Liming Gao Cc: Ray Ni Cc: Abner Chang Cc: Abdul Lateef Attar Abner Chang (1): MdePkg/SpiConfiguration: Correct the definition spelling Brit Chesley (5): MdeModulePkg/Bus/Spi/SpiBus: Adding SpiBus Drivers MdeModulePkg: Adding SpiBus Drivers MdeModulePkg:BaseSpiHcPlatformLib: Adding NULL lib instance MdeModulePkg: SpiHc: SpiHc Drivers MdeModulePkg: Adding SpiHc Drivers MdeModulePkg/MdeModulePkg.dec | 5 + MdeModulePkg/MdeModulePkg.dsc | 6 + MdeModulePkg/Bus/Spi/SpiBus/SpiBusDxe.inf | 41 ++ MdeModulePkg/Bus/Spi/SpiBus/SpiBusSmm.inf | 41 ++ MdeModulePkg/Bus/Spi/SpiHc/SpiHcDxe.inf | 47 ++ MdeModulePkg/Bus/Spi/SpiHc/SpiHcSmm.inf | 45 ++ .../BaseSpiHcPlatformLibNull.inf | 33 ++ MdeModulePkg/Bus/Spi/SpiBus/SpiBus.h | 167 +++++++ MdeModulePkg/Bus/Spi/SpiHc/SpiHc.h | 117 +++++ .../Include/Library/SpiHcPlatformLib.h | 148 ++++++ MdePkg/Include/Protocol/SpiConfiguration.h | 4 +- MdeModulePkg/Bus/Spi/SpiBus/SpiBus.c | 433 ++++++++++++++++++ MdeModulePkg/Bus/Spi/SpiBus/SpiBusDxe.c | 198 ++++++++ MdeModulePkg/Bus/Spi/SpiBus/SpiBusSmm.c | 162 +++++++ MdeModulePkg/Bus/Spi/SpiHc/SpiHc.c | 115 +++++ MdeModulePkg/Bus/Spi/SpiHc/SpiHcDxe.c | 101 ++++ MdeModulePkg/Bus/Spi/SpiHc/SpiHcSmm.c | 79 ++++ .../BaseSpiHcPlatformLibNull.c | 145 ++++++ MdeModulePkg/Bus/Spi/SpiBus/SpiBus.uni | 10 + MdeModulePkg/Bus/Spi/SpiHc/SpiHc.uni | 10 + .../BaseSpiHcPlatformLibNull.uni | 11 + 21 files changed, 1916 insertions(+), 2 deletions(-) create mode 100644 MdeModulePkg/Bus/Spi/SpiBus/SpiBusDxe.inf create mode 100644 MdeModulePkg/Bus/Spi/SpiBus/SpiBusSmm.inf create mode 100644 MdeModulePkg/Bus/Spi/SpiHc/SpiHcDxe.inf create mode 100644 MdeModulePkg/Bus/Spi/SpiHc/SpiHcSmm.inf create mode 100644 MdeModulePkg/Library/BaseSpiHcPlatformLibNull/BaseSpiHc= PlatformLibNull.inf create mode 100644 MdeModulePkg/Bus/Spi/SpiBus/SpiBus.h create mode 100644 MdeModulePkg/Bus/Spi/SpiHc/SpiHc.h create mode 100644 MdeModulePkg/Include/Library/SpiHcPlatformLib.h create mode 100644 MdeModulePkg/Bus/Spi/SpiBus/SpiBus.c create mode 100644 MdeModulePkg/Bus/Spi/SpiBus/SpiBusDxe.c create mode 100644 MdeModulePkg/Bus/Spi/SpiBus/SpiBusSmm.c create mode 100644 MdeModulePkg/Bus/Spi/SpiHc/SpiHc.c create mode 100644 MdeModulePkg/Bus/Spi/SpiHc/SpiHcDxe.c create mode 100644 MdeModulePkg/Bus/Spi/SpiHc/SpiHcSmm.c create mode 100644 MdeModulePkg/Library/BaseSpiHcPlatformLibNull/BaseSpiHc= PlatformLibNull.c create mode 100644 MdeModulePkg/Bus/Spi/SpiBus/SpiBus.uni create mode 100644 MdeModulePkg/Bus/Spi/SpiHc/SpiHc.uni create mode 100644 MdeModulePkg/Library/BaseSpiHcPlatformLibNull/BaseSpiHc= PlatformLibNull.uni --=20 2.42.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#118473): https://edk2.groups.io/g/devel/message/118473 Mute This Topic: https://groups.io/mt/105849123/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-