From nobody Mon Feb 9 11:51:48 2026 Received: from mx07-00178001.pphosted.com (mx07-00178001.pphosted.com [185.132.182.106]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0747D30B52E; Wed, 17 Dec 2025 21:52:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=185.132.182.106 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766008376; cv=fail; b=IlKMfgKdfp8roONjo8Ms44ONoEjYxQaZMk1BCnqVkc2K3cOt7rBVISjUPp3bXnmXe345Fas/YgEnhqky7jNiCWOhB6ZvoFnXPOSCGMLFwjM6FbwXjDZRBShvjyUETSR2qWtA6Ht2hmiWj1EoTSt8m2XLfrWJHRrpmvwFz1nvlNk= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766008376; c=relaxed/simple; bh=iwsekyuCxhuAUUEi4ywIJT+XZe2+ADFbXVDbxMJ2pmE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:CC; b=BP8qDduKdG0b5XnwiytWAvLTVXeH3of9uaSJm0p4X+DgkQGbwwt0SzRc7WC/GQzB36Ko/cUzHE/GuZqNrMgnwWQnXPGwrBExtMMI5e3bSX62yGZio2efjZd9igsA71WIur2/Y45fH9gdGEX9LKGn+6UUhnIRYEEF1nWBLm4drwE= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=foss.st.com; spf=pass smtp.mailfrom=foss.st.com; dkim=pass (2048-bit key) header.d=foss.st.com header.i=@foss.st.com header.b=M8Mul7Pq; arc=fail smtp.client-ip=185.132.182.106 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=foss.st.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=foss.st.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=foss.st.com header.i=@foss.st.com header.b="M8Mul7Pq" Received: from pps.filterd (m0369458.ppops.net [127.0.0.1]) by mx07-00178001.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BHKqKiF3919858; Wed, 17 Dec 2025 22:52:45 +0100 Received: from pa4pr04cu001.outbound.protection.outlook.com (mail-francecentralazon11013020.outbound.protection.outlook.com [40.107.162.20]) by mx07-00178001.pphosted.com (PPS) with ESMTPS id 4b3a3wnqp9-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 17 Dec 2025 22:52:44 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=h1jx+wW8mgK+uyeisZDeL275ygVrtL8RiHH9Z+omgCBuvaoy0bZb583vRz9uMU/HIEXmo0JFjZV26W8ayQQiErXD/g//aa5Bv6p4AykWVN9H1hTtDcZTvyxICwlHO5J/44D6uB7yc7eRAZxrSzAU8LSZHwtlrMFO4rIkfjwyg+lsoL2pHjxMn8qLIeoAtVmGqvvzKU1jY9cZYKtLv8wYG8g6FESf7NChkBuLKzGmg3OXqg5tJVlZR8XkiCRlb6db1o0nsRVs8HFZ2LHgwJPr79ErBX4UtuaDUqcFhLnwiMskRIACsTB5rOzYvRetMbHRw4n/PyPzgp+uJq8X3e8w6g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=cP5IQAiPQx4GiPlg0zcP9mTsfVP9QOaAkQmdRQjzl1M=; b=FiZs0PcdIgWHOFLhkmh0+DXH9Q8NL6cwwGcyGCZkKTdYNe364hTVmF6QOvPUPNRQc+VOgSLNO7YPSLZogV1Kebff/OLbc8yNFx4NBru+V350k7YZmRgnP5e68P2ItxpmxGg8AexVVS1vc91oHLedrUhR8YEeVMcfnQZQQtTGXODrWW9s3zdNeW74JzMgJ3HngWmC/3ieOGxlCdOf5kwecsRSdK1DeEcAM4sn2GxmH6VLeGAHk7iHf2JKT23lz8DVkNLifdTJS+QvQ4HTj23g8PH79ys1eZzO+b/r4e4afcbGRfCT4h0q3y2V2cBECsy6Doud2Cm6AZ3TAo+B35PLyQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=fail (sender ip is 164.130.1.59) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=foss.st.com; dmarc=fail (p=none sp=none pct=100) action=none header.from=foss.st.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foss.st.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cP5IQAiPQx4GiPlg0zcP9mTsfVP9QOaAkQmdRQjzl1M=; b=M8Mul7PqyMKY79vbpDf4KNL/CT/6MPcrWVIfG2xD+37eIbKJM13yAiB38QmNdwxBHl7pqfaZAW9ln+YOpNOic6C8NstRpMbjA58oL97SF+ItK2Fwuyx8Rrpprj+X8gNiKk9S1ptM/OFTcdaIdmfmgDxcUkKwFG/0yyvneTVhlQDYI7PKfOLXa9SWhyFy9y6x2kO1O8KvAwla9MpDx50v0eKYKmSXTky2x38CG1fH1cg3sTyBUkILLh6GHRmTV6YDyfqblsg+B4zf9LqVk70R1OUHVTAa3Sz7INlt3ZiADC9HGxYXfda2PGgFAde3hgcBnnhx3vDLxUbUglGP5dLVOA== Received: from DUZPR01CA0054.eurprd01.prod.exchangelabs.com (2603:10a6:10:469::10) by AS2PR10MB7659.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:643::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9434.7; Wed, 17 Dec 2025 21:52:40 +0000 Received: from DB1PEPF00039233.eurprd03.prod.outlook.com (2603:10a6:10:469:cafe::f8) by DUZPR01CA0054.outlook.office365.com (2603:10a6:10:469::10) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9434.8 via Frontend Transport; Wed, 17 Dec 2025 21:52:46 +0000 X-MS-Exchange-Authentication-Results: spf=fail (sender IP is 164.130.1.59) smtp.mailfrom=foss.st.com; dkim=none (message not signed) header.d=none;dmarc=fail action=none header.from=foss.st.com; Received-SPF: Fail (protection.outlook.com: domain of foss.st.com does not designate 164.130.1.59 as permitted sender) receiver=protection.outlook.com; client-ip=164.130.1.59; helo=smtpO365.st.com; Received: from smtpO365.st.com (164.130.1.59) by DB1PEPF00039233.mail.protection.outlook.com (10.167.8.106) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9412.4 via Frontend Transport; Wed, 17 Dec 2025 21:52:39 +0000 Received: from STKDAG1NODE2.st.com (10.75.128.133) by smtpo365.st.com (10.250.44.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Wed, 17 Dec 2025 22:53:27 +0100 Received: from localhost (10.252.10.67) by STKDAG1NODE2.st.com (10.75.128.133) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Wed, 17 Dec 2025 22:52:38 +0100 From: Alain Volmat Date: Wed, 17 Dec 2025 22:51:31 +0100 Subject: [PATCH 1/4] spi: stm32: fix Overrun issue at < 8bpw Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-ID: <20251217-stm32-spi-enhancements-v1-1-943348b8ff66@foss.st.com> References: <20251217-stm32-spi-enhancements-v1-0-943348b8ff66@foss.st.com> In-Reply-To: <20251217-stm32-spi-enhancements-v1-0-943348b8ff66@foss.st.com> To: Mark Brown , Maxime Coquelin , Alexandre Torgue , Rob Herring , Krzysztof Kozlowski , Conor Dooley CC: , , , , , Alain Volmat , Deepak Kumar X-Mailer: b4 0.14.3 X-ClientProxiedBy: ENXCAS1NODE2.st.com (10.75.128.138) To STKDAG1NODE2.st.com (10.75.128.133) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DB1PEPF00039233:EE_|AS2PR10MB7659:EE_ X-MS-Office365-Filtering-Correlation-Id: 70c51bd9-cc9a-47b6-4175-08de3db698dd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|376014|82310400026|7416014|1800799024; X-Microsoft-Antispam-Message-Info: =?utf-8?B?WTlZS2Q1S3NuMlRqYlZVTW8yeml4dGFvVlB1cUx4WkpJU3NiL2QzUXVqYkxu?= =?utf-8?B?TU5VT1BpTjhzdk9PRlYxOG50MXUweXBEVkljOFR5NzRWLzJoWEtKclJwbGQz?= =?utf-8?B?VzhWUFlwbk53amV1dFVqRkpZS0xMNTlsZytSVk94ME9WOUxtbjJ5WDUvWlNN?= =?utf-8?B?MXpGNERHVDd5WkJ5cXgyZXRNaWlYa3lBWGdpKzJjQXFvbVVON1JWOFU5L1VG?= =?utf-8?B?UThNV1I4YVpTZWdpdnJwaDJ0TkFkUnhGQ3k4c3ZoRHRkYUlwL0xSTklYYU52?= =?utf-8?B?ZmNzTGZIUlJKWjZhZzVGWjNtbEZHcCtFQlN4dkJ5UTc3WFZqTGtLSDdzRWI0?= =?utf-8?B?ZmljU3hiMVpQaW5XMDlqOGRoUkRleWJpTXBPYlZSS2VGRUErZ3NvS09SMWpj?= =?utf-8?B?M25zN25mZmtiUTZEdmRlRm5ucUQvNmJHOWdmVzJ2b01UNTM5OGdiVERUZW13?= =?utf-8?B?amRZOXZXR1M2SUZweXl0SUFOMTk1VU1uU0VpTGRUSHhIM1M2YjU5NU4rTDNT?= =?utf-8?B?YVA5cEl4YytSQ1RuVTcrK0xSNmZ6aUFjNnJ0WHVPa0VuWmhQamdVNS9YczY5?= =?utf-8?B?OFRkMktsSDZRZmQrNWJmY1NOSWRmdGhSRXF6MFZOeWxkY2tkMDJueStVQWEz?= =?utf-8?B?MkxaaVlZbU8zQUQvMDFMZHR4eW5GcnFBMHk3dDZ6K0lBZ3lKOS9PTkIzM2I2?= =?utf-8?B?eUFkbEJ6QTVQcWY1OHNVZ0dIYUpPSGJaSVdTczlVVDRvR0JMOGV4TDdIY3hk?= =?utf-8?B?QUhCbTI1QTZzYm5vWThPSXp3VmJwWGZIZ1V4c1hmNGw1RjlscEo1TjV0VEk4?= =?utf-8?B?ako4MVo3SGx5OUJZWCt0SmR4QjIzYTdsLzlPcVcyWnNOL0ZucDRPOXcrTTZp?= =?utf-8?B?NzdpcUhaclI3Q2VVL0N3aVEvSk9qQ3RrVmswbm1FbzlPeHpkWmZxdWxBUk9z?= =?utf-8?B?R2UvelByZGVvVUxhMHBrTFN1OFBHREx2dUxGdnlaclNoUHRUSGloeXNPZTBz?= =?utf-8?B?OFVoWmZMTTNGRjNwb0o1QWJCcnFFb3REVnMrREc5bHBOZ3RoUFJhUXg3V1hw?= =?utf-8?B?Q3N0RDA5a3d6aWVYR256bG5XTnEyL0llVDMyc1AzSGl2N1VDMjE4TWt5aEtZ?= =?utf-8?B?d1lYaUNtSG1DWUhxMml3TGxnTmtlUmxCay9wQ0hITHlpS2kxVklyN2YyQ2Jo?= =?utf-8?B?Z0V1SXQ0NnRmTk54NjY5V0dra0hsN1M5c1ZYWEUvUlNSRUVFVW51MnJxZE5D?= =?utf-8?B?ZnFsdHlGZUxlbXZxeVI5LzY1M1V4NUZUbUFyMXZQUFFFd0I4eW0wdVpMcVBw?= =?utf-8?B?aURZWjdwNklGaXVEYVV0dVhBZzBIME5tcTl2dzdVVW94TGNPQkNqUlFQRmNU?= =?utf-8?B?MEIvWjVLbmRKT2hHbFJlSk5sVVVvTzQ2VjZGQkkvUUVKTWozbmZhMURSUWRo?= =?utf-8?B?emFmYkJDbDFYVkxMUXNNL2dSK1ZFMm5IYXpTaXgwejdGQnFCSlQvUmJUZS92?= =?utf-8?B?eXZMUXRvSzhpM2hIbUxwb3V3U0YrbGlhYld2aFE1cVZJMHNNUS9uN1ZUSjFh?= =?utf-8?B?M25XWWlFVWd4MEY5ak1zZFEvUUZoMGNadXVyTWNCQWNHRzFNUGRVM2JvSjhJ?= =?utf-8?B?ZHRaTlpNYVVjZllCVnk1VnRHQUtObHBGZXdYZUJMRzBILzhIQkxjcERSa1Zi?= =?utf-8?B?T3RpSWZtV0NLZUQyOUFMSDFaTm5ncHdKVmFLMFBNMHFTL1hreVUrbFd4aWVo?= =?utf-8?B?VGN0TzhlU0JrWkoyNXZLSVZkNlYySUdUMjNFMCtPWFRzNEZ1RFRGZGJBYmNY?= =?utf-8?B?bjBxUWdXaWhEamxlbGlpUWlzR2ZOQzFxUmZBQXkySklhSFNRVWpDR1lSZTEr?= =?utf-8?B?ajlTMVhFTHlkVnVyOVVzbEliVVkweHlQallpM1FQUytrSUJDbXpWU1BZNlBF?= =?utf-8?B?b0loZjUrc2pDM1VMODBqMDQ3UDcycDJ5TjVDUzJJd1h3bjdCWG8wRFpGNSs5?= =?utf-8?B?dmxBZ2N4TDF4Vmg4TkpqOFgrcXIrZ2dkNzI4Z0owQWJKbjJiM3Nqemp4dTFM?= =?utf-8?B?QkszaDljQ0M2RGdiTDFYRkxISDRQWllpWjlIUVJIWjNyQjJoZk0wYm1kR2hs?= =?utf-8?Q?Lkso=3D?= X-Forefront-Antispam-Report: CIP:164.130.1.59;CTRY:IT;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:smtpO365.st.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(36860700013)(376014)(82310400026)(7416014)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: foss.st.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Dec 2025 21:52:39.0010 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 70c51bd9-cc9a-47b6-4175-08de3db698dd X-MS-Exchange-CrossTenant-Id: 75e027c9-20d5-47d5-b82f-77d7cd041e8f X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=75e027c9-20d5-47d5-b82f-77d7cd041e8f;Ip=[164.130.1.59];Helo=[smtpO365.st.com] X-MS-Exchange-CrossTenant-AuthSource: DB1PEPF00039233.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR10MB7659 X-Authority-Analysis: v=2.4 cv=HLHO14tv c=1 sm=1 tr=0 ts=6943262c cx=c_pps a=KLgfLrvyo2JQOIzkxevRWw==:117 a=d6reE3nDawwanmLcZTMRXA==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=tougUffuSCAA:10 a=IkcTkHD0fZMA:10 a=wP3pNCr1ah4A:10 a=s63m1ICgrNkA:10 a=KrXZwBdWH7kA:10 a=VkNPw1HP01LnGYTKEx00:22 a=8b9GpE9nAAAA:8 a=XWWnaGIsyUaM4A8MAfMA:9 a=QEXdDO2ut3YA:10 a=T3LWEMljR5ZiDmsYVIUa:22 X-Proofpoint-ORIG-GUID: L6E8fbCZ07w2P1aH_Tcah-Hsggsa3thw X-Proofpoint-GUID: L6E8fbCZ07w2P1aH_Tcah-Hsggsa3thw X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjE3MDE3NSBTYWx0ZWRfX7B6s6Uo5L6Nq pvRHCf2VpSArz7R5xoK4myBDYYnsRezSoCwgqFrxjwlea8w3QtWc0btIh31BKdXBw+WvPIBZsUk nfDuRcRo+myQnbaP7TF6p8WDM5D+XHyed40bfjkl1S1BiPy/NBDQu5fz0wbUx8oEaqXHZYbwOyr CfcX+1NyPF7DB/LwL3VsrYnTcq47FtmAKhlfctwV2FZDSpnPxlyaKgT7X/eMF8CoA/ubx1Elkk/ jb1ME4BNpkn7eZxyUEe3ozx6x+BhdeBbZ93BtM80c/+Wj/uOzwwPcCEkNoR41T8mtUSTOD2m1ja pN4hikzA8myeoDVWRqu0RtQU3PHCnSgA1xaYfnH9hDalx5ywSnDKD2Fpo9bTG4Pn8hsVH4UPPhx BZQRu4NXya37PNgx85JK/Q+qwKlViA== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-17_03,2025-12-17_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 adultscore=0 priorityscore=1501 lowpriorityscore=0 spamscore=0 impostorscore=0 malwarescore=0 bulkscore=0 phishscore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512170175 From: Deepak Kumar When SPI communication is suspended by hardware automatically, it could happen that few bits of next frame are already clocked out due to internal synchronization delay. To achieve a safe suspension, we need to ensure that each word must be at least 8 SPI clock cycles long. That's why, if bpw is less than 8 bits, we need to use midi to reach 8 SPI clock cycles at least. This will ensure that each word achieve safe suspension and prevent overrun condition. Signed-off-by: Deepak Kumar Signed-off-by: Alain Volmat --- drivers/spi/spi-stm32.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/spi/spi-stm32.c b/drivers/spi/spi-stm32.c index 2c804c1aef98..80986bd251d2 100644 --- a/drivers/spi/spi-stm32.c +++ b/drivers/spi/spi-stm32.c @@ -1906,11 +1906,12 @@ static void stm32h7_spi_data_idleness(struct stm32_= spi *spi, struct spi_transfer cfg2_clrb |=3D STM32H7_SPI_CFG2_MIDI; if ((len > 1) && (spi->cur_midi > 0)) { u32 sck_period_ns =3D DIV_ROUND_UP(NSEC_PER_SEC, spi->cur_speed); - u32 midi =3D min_t(u32, - DIV_ROUND_UP(spi->cur_midi, sck_period_ns), - FIELD_GET(STM32H7_SPI_CFG2_MIDI, - STM32H7_SPI_CFG2_MIDI)); + u32 midi =3D DIV_ROUND_UP(spi->cur_midi, sck_period_ns); =20 + if ((spi->cur_bpw + midi) < 8) + midi =3D 8 - spi->cur_bpw; + + midi =3D min_t(u32, midi, FIELD_MAX(STM32H7_SPI_CFG2_MIDI)); =20 dev_dbg(spi->dev, "period=3D%dns, midi=3D%d(=3D%dns)\n", sck_period_ns, midi, midi * sck_period_ns); --=20 2.34.1 From nobody Mon Feb 9 11:51:48 2026 Received: from mx08-00178001.pphosted.com (mx08-00178001.pphosted.com [91.207.212.93]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 367C02D5410; Wed, 17 Dec 2025 21:52:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=91.207.212.93 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766008375; cv=fail; b=ZWOACfZy5NxpogG1GwqIMlp6XNw43q5zKT8H/7GT7izRqeK+CKH4TpggAV49Zw4dDIsj9lGVP68aHRuLS1CAYozhekVjPNDuYr/xVosaiirp8396hvs7Gkie42p/8syjZDhJE8pzZSNiFtaOtiPLZyq0LsebofRWWbjHqpFqKdk= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766008375; c=relaxed/simple; bh=SgwXWtSUrIQNNxhn+kpGAQzaM91Xm+R82WHjuqJUUOs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:CC; b=dVuGLGMyChQIsgPsSFfePP/HqfurPMWH8IhtkNO5asJFvqp1n5g+GGRKiCXKx0RIRCWDerdrPCTqYhcoO36p22N0v3Dk7eQFxYgZMRmR4Fsu5Wr0O6Gbd4p5Txql47xWr9RHkqz11ZniLy+yxLMqDXMrOM2uSAo8M+3EmVyKiEQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=foss.st.com; spf=pass smtp.mailfrom=foss.st.com; dkim=pass (2048-bit key) header.d=foss.st.com header.i=@foss.st.com header.b=Cg5gNNtJ; arc=fail smtp.client-ip=91.207.212.93 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=foss.st.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=foss.st.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=foss.st.com header.i=@foss.st.com header.b="Cg5gNNtJ" Received: from pps.filterd (m0369457.ppops.net [127.0.0.1]) by mx07-00178001.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BHLO5bD104401; Wed, 17 Dec 2025 22:52:45 +0100 Received: from as8pr04cu009.outbound.protection.outlook.com (mail-westeuropeazon11011018.outbound.protection.outlook.com [52.101.70.18]) by mx07-00178001.pphosted.com (PPS) with ESMTPS id 4b39n9dsnn-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 17 Dec 2025 22:52:44 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dP/IfFqZK4upw/5f4INY/zOtmX1Ps1Ep8CC6RmUgavV2j2w22M5rLtMtGsS6NEF5cEc2afRuY2wxaVglVDct11a+wVfoPuqnKmOZxz0yzRp3bFFZWhfBRJtf7l5uGhf6MW+KHPdBKJDbKi8PYj9PUfyRIiKUsgSR14GiyK+H36BW+8Gi6WATdX+VooD+sM9sDuIdYP9kTeB1/+ALFzFAtbBMgnw2vvYnqEq5qporErAu3SWiKfbwYRbkt5+PaHhReLNQz8ifR/g3uYsnfe9YetgUWNSEor1iH6q8wWblwXqvFKt7TuoLBRGthya9COQ3Ud5/T0TXj0hwQcyGulMmOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=+8Gj37VncrG09hyhqANdMKogXJ9mUtTi7y3SOf2JQ30=; b=IDzXB1MDEWCemqSFJE/X5BwLRNZC7SYQ4tATuV09fw9urIUIouvvIz4TypUHe90r0Fc8QesqLOaVMiA4JvZ6Y/oVTAxCWHWcFrI/9HZckoMy/586WRuTvxWtfex9gU1tBoyoPKTUfJFpNxdSJlmMazXgzAhOYLq1war2HY47UuYyxDgxOuJgGXLrRw/haUG3NAz2utqDpErMJ28lMzocfbnnCTcARUMbtbVe0LEMhZ+T8FTfBQCPIIOAOrBc+DXjdq16/HmfLkKlTcYijdYbYT0IkKC2Oxn8jJ8HhMbEHsdsP/lOo+SVxUcvGAfaAerTGo100tIhWJjXLlRRWQF+AQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=fail (sender ip is 164.130.1.60) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=foss.st.com; dmarc=fail (p=none sp=none pct=100) action=none header.from=foss.st.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foss.st.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+8Gj37VncrG09hyhqANdMKogXJ9mUtTi7y3SOf2JQ30=; b=Cg5gNNtJzcShf9z/XgTzsuJRy1lAierMkkglxaO+/hOsLzTtlEay/4Vh6Z5HgI3ii90Dy5MiRybZ6EoEgXB7XTrzyJqFXADCKAoMHVkZG6SHFX6UqoMHdZDWS+YXqnmps/cvLTvxdJiaVWSeYVxCFHHgjTRzf02ozsvR2K6kRJWStUrC5RwLVYZKUKl4DeF0Bj1QfOvsirTKvl/C03giqnNqf1WvcAEQ1/42BDb22nPmVAZfB9A6jQwppssQ1H+wMrb2nr+1zpH9+k66YnU3TRa9V8Q3HXrGrTkfl6mEPFwz2ul2Ekv15a9iOaDHGL51b8VgLSZ+aJXi9FW7FHHB3Q== Received: from DU2PR04CA0217.eurprd04.prod.outlook.com (2603:10a6:10:2b1::12) by AM7PR10MB3288.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:10c::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9434.6; Wed, 17 Dec 2025 21:52:40 +0000 Received: from DB1PEPF000509E4.eurprd03.prod.outlook.com (2603:10a6:10:2b1:cafe::38) by DU2PR04CA0217.outlook.office365.com (2603:10a6:10:2b1::12) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9434.7 via Frontend Transport; Wed, 17 Dec 2025 21:52:33 +0000 X-MS-Exchange-Authentication-Results: spf=fail (sender IP is 164.130.1.60) smtp.mailfrom=foss.st.com; dkim=none (message not signed) header.d=none;dmarc=fail action=none header.from=foss.st.com; Received-SPF: Fail (protection.outlook.com: domain of foss.st.com does not designate 164.130.1.60 as permitted sender) receiver=protection.outlook.com; client-ip=164.130.1.60; helo=smtpO365.st.com; Received: from smtpO365.st.com (164.130.1.60) by DB1PEPF000509E4.mail.protection.outlook.com (10.167.242.54) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9434.6 via Frontend Transport; Wed, 17 Dec 2025 21:52:39 +0000 Received: from STKDAG1NODE2.st.com (10.75.128.133) by smtpO365.st.com (10.250.44.72) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Wed, 17 Dec 2025 22:53:24 +0100 Received: from localhost (10.252.10.67) by STKDAG1NODE2.st.com (10.75.128.133) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Wed, 17 Dec 2025 22:52:39 +0100 From: Alain Volmat Date: Wed, 17 Dec 2025 22:51:32 +0100 Subject: [PATCH 2/4] spi: stm32: perform small transfer in polling mode Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-ID: <20251217-stm32-spi-enhancements-v1-2-943348b8ff66@foss.st.com> References: <20251217-stm32-spi-enhancements-v1-0-943348b8ff66@foss.st.com> In-Reply-To: <20251217-stm32-spi-enhancements-v1-0-943348b8ff66@foss.st.com> To: Mark Brown , Maxime Coquelin , Alexandre Torgue , Rob Herring , Krzysztof Kozlowski , Conor Dooley CC: , , , , , Alain Volmat X-Mailer: b4 0.14.3 X-ClientProxiedBy: ENXCAS1NODE2.st.com (10.75.128.138) To STKDAG1NODE2.st.com (10.75.128.133) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DB1PEPF000509E4:EE_|AM7PR10MB3288:EE_ X-MS-Office365-Filtering-Correlation-Id: 5629a2d3-b626-4427-db5c-08de3db69970 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|82310400026|1800799024|36860700013; X-Microsoft-Antispam-Message-Info: =?utf-8?B?NWVzVDBid2RuWW1ITmZlYythQ2RrVWRMQjRHeDBTd2FLdkFwVGhQUWUrblVj?= =?utf-8?B?STBGVVlzdkN3eXRWNmd1bm45RGtZYk91QVpyVVg5M1pGWGs1UFdHa0p5OU01?= =?utf-8?B?WVdlMU8wOWxYcEdicXN0dEhtNUcwRWg4QUVzNVdiRlZTd0JSV2xqV3Z3dE9a?= =?utf-8?B?YlhnTlRnODhEZFFIVEc1SFg1anBXYXcybnVSUUFzbk1OM2gwekxJYithMTlq?= =?utf-8?B?VjNld0dtbjJndSsxSHUwVzNXMy9NaGowSTY3MENiNnhocTM4SFFPL2FGWHpv?= =?utf-8?B?SWNmY0ZXME5IZC9GT29wR0NDVE14ZG80UGtTWjVYQVpZd29UVldMamNyT1BG?= =?utf-8?B?QzZ4L1FCcUxjVFR1eWhqSm5VcjlBM09vOWcvQjU5a2ZxRFAydy9ubTUxSFUz?= =?utf-8?B?Y3huQ2Rxd2c3RElEUGRRTzdyY2lQV0ZYZWZHRnpqUU1MYkpxeEU4UXRmZ2ZZ?= =?utf-8?B?U3gvUXg4NERKdk5Jc2M2ZnE2UHlLVDR1ZnpxWWFjbFVzdENoRzhMbWVZNlZG?= =?utf-8?B?U1FwMWZneDJrLzlaKzhyZDJQa0NHaFBqd3ZPaTAzSmM2TVZTcWYybXJncGhF?= =?utf-8?B?cmpGTGJ1MG5tY1IzenFzRXhUcnhTSjByY1BabVRtVHl4czNJN041ejR5bCtm?= =?utf-8?B?MnNadTdOTjQvdk15QVUrWmVkWE1KckxHN3l2TzMvaTlIMUU5Z0ZHYkRVVC9w?= =?utf-8?B?WjU3OXVVOHhTMWRwdlQydHpTbG1vazY4YlRCc0JqdEo5U3Z4RURONVIvd0tt?= =?utf-8?B?THY1S1dESWprUzJZc3hDMmFrZjJlY1JNbVlXTlRaZFJLTmc1ZjBQWnNONUJy?= =?utf-8?B?TmJFa3FDcHY3NzRaYkFnV0NFbHVRNU5UVUx0NzdZWFp3R3RTZEdLZVQxb1d6?= =?utf-8?B?dURURGgya29zRXc4bDVydThkL2VzUVZKRXNIekM5dkQ2RTlOT2J6MXl5bUFU?= =?utf-8?B?c0dIL1Rjbzd1Y0E1MUF1RUZFbFpKckk3T2VoZVRkVXoyam9Ga01vMDc1OXI2?= =?utf-8?B?WjYzYkNWSXNKanV1b3ZEYVFvMVJnV0ppL051aEdXL0pJY0RuMlhTOHBpSk1S?= =?utf-8?B?OHBESFFOaEhrU0RsQjZNR3AxbjBPK2k3cFdXWVlNU0pUN2xaaldzVGROOXFa?= =?utf-8?B?VHhqSm1ibVRZak5MVDVLemI1RW5wbnJaMDBMZ1BtMTVPeTZjWEw1bnRiejhw?= =?utf-8?B?QUZHTFJURldJbDhpb1ByZ01hTm9EVmJOVlZvUmdRKzRQWnpJdFNqbG1mcGw1?= =?utf-8?B?SzhiTDloV3VkMzZ1RmtvRnJTS0Q5b1l5U0lzMkQ1OHd1Y3VCWWFIdWRSR0Na?= =?utf-8?B?VkJhZHByMDg2WlpYSU1MVllrVVVMaWFuNW5SemtTMERpOUhVdmUvam5aUEZB?= =?utf-8?B?MnRJREdZLytuOE5aTXppamM3QnZuV2pPOG9td2xkR3oxZGpCNUtFMFV5Qmda?= =?utf-8?B?MWt3SFdpVncyMnpobUpJaVc5cVBUaHd1Y1h3M0RXUDNIS2d5a3Z4YUFKZmNn?= =?utf-8?B?OGlpK2JKYUlDRzI2L3lvMUFmbHo1akJCdUMvcU9xMGFmc1V0Q0dOaVpGODhO?= =?utf-8?B?N04zUW94ZTdDSXZ1ZVJ2Q09taGh2MDA1ekVXbWdFY3NZdDJYRVRpQnkvSWNy?= =?utf-8?B?UXpBUXhKQVBpekZPdklZRGRyallvWTJvSEdyNVFBVmJ4d2hzU0dlaVg3dlQx?= =?utf-8?B?SytLM3VpbFlQd2ZWSmpBUHYwSGZVcDB0Rm45RVQxelo4cUZCWGFZV3hKUHMw?= =?utf-8?B?dGlzMThxT2o4aUMvRzIzTG8yd0UrcjNpczBqRzFHY3VGM1hDZzVpVi80RER1?= =?utf-8?B?Zjc0QUd1R0JXYlEwRjRzR2Y5L0QxOFl4NWxlektSMHJ1UzRaeVV0R2ZFR2JD?= =?utf-8?B?Nnk2czJTZnhmcmlDODJtYkgreVFpYnZLVkVZeFExN1AwTVFEY1p3ZEYvaWJQ?= =?utf-8?B?NmIzb3QrK1VMM3hCczA5S0drRXRGTTBWbFVvYVVhMU9ZZUozRkp2SGhSWlJh?= =?utf-8?B?YzJUc2gzSEx0dCtjOVVNTTVER0o4dFAvT2tLMDVxemhDcmZKZFFTQWo3V3Nv?= =?utf-8?B?SzUzMjBXeTg0bjJqOTRBak95MjNvQU1HUWt6dzJzVVJHb0h4UmxOVVQ5eUVY?= =?utf-8?Q?SaVw=3D?= X-Forefront-Antispam-Report: CIP:164.130.1.60;CTRY:IT;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:smtpO365.st.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(7416014)(376014)(82310400026)(1800799024)(36860700013);DIR:OUT;SFP:1101; X-OriginatorOrg: foss.st.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Dec 2025 21:52:39.9737 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5629a2d3-b626-4427-db5c-08de3db69970 X-MS-Exchange-CrossTenant-Id: 75e027c9-20d5-47d5-b82f-77d7cd041e8f X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=75e027c9-20d5-47d5-b82f-77d7cd041e8f;Ip=[164.130.1.60];Helo=[smtpO365.st.com] X-MS-Exchange-CrossTenant-AuthSource: DB1PEPF000509E4.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR10MB3288 X-Authority-Analysis: v=2.4 cv=EK8LElZC c=1 sm=1 tr=0 ts=6943262c cx=c_pps a=RAmqSNJtJSKe9EuFyr+DeA==:117 a=uCuRqK4WZKO1kjFMGfU4lQ==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=tougUffuSCAA:10 a=IkcTkHD0fZMA:10 a=wP3pNCr1ah4A:10 a=s63m1ICgrNkA:10 a=KrXZwBdWH7kA:10 a=VkNPw1HP01LnGYTKEx00:22 a=8b9GpE9nAAAA:8 a=PamUOCDZJ7i4i8YjnSMA:9 a=QEXdDO2ut3YA:10 a=T3LWEMljR5ZiDmsYVIUa:22 X-Proofpoint-ORIG-GUID: w3xpK0SXmrcq7rA0dBQBRpUouzEUoCzn X-Proofpoint-GUID: w3xpK0SXmrcq7rA0dBQBRpUouzEUoCzn X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjE3MDE3NSBTYWx0ZWRfX7Qa3k456IiVO kZCs/8Oi2ePAOM7Thq9NzFMeJURjV46Ep3A37yr/PMXmQNucIg6DLTwCxic9M8oxqKt2bGKioD5 M7/zlTAsRGyNCCf1ulro7sIKneehgjLdS2Zplc83xtuVed9hmAv5AejrXWmHmwjrM4j/7Lh41Ih bZS8UyPRH5bMkimnMTP8RcR4Yn77cwV04nZV4mU5zB/rLpm674Pc0DZXVQBSjoFf8LEMiOu2utQ Sqq6fXFOdr8o0tH9PvZHt8DQAARlekmHPjejpBbKL65/8ueidJuY2wYAHk5AXuOi6e+4e7Hnw0u Ys4mCIzKTdfYTmTUKBavKQVBd48svERlY33N0CfvYSd/EtpNCQ0oL2rH9rDFIUkEVMlU6cT8Bii csxMm4VgoMvp/xIXB3I1uds9Hy3wBQ== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-17_03,2025-12-17_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 impostorscore=0 adultscore=0 lowpriorityscore=0 bulkscore=0 phishscore=0 spamscore=0 malwarescore=0 clxscore=1015 priorityscore=1501 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512170175 In case of interrupt based transfer, when the transfer is very small, relying on interrupts leads to lower performances than if the transfer were done using polling on the registers. Add a module parameter "polling_limit_us" to indicate the threshold in us from which a transfer would be done polling the registers rather than relying on interrupts. Signed-off-by: Alain Volmat --- drivers/spi/spi-stm32.c | 77 +++++++++++++++++++++++++++++++++++++++++++++= ++++ 1 file changed, 77 insertions(+) diff --git a/drivers/spi/spi-stm32.c b/drivers/spi/spi-stm32.c index 80986bd251d2..353ea5b93e0a 100644 --- a/drivers/spi/spi-stm32.c +++ b/drivers/spi/spi-stm32.c @@ -202,6 +202,10 @@ #define STM32_SPI_HOST_MODE(stm32_spi) (!(stm32_spi)->device_mode) #define STM32_SPI_DEVICE_MODE(stm32_spi) ((stm32_spi)->device_mode) =20 +static unsigned int polling_limit_us =3D 30; +module_param(polling_limit_us, uint, 0664); +MODULE_PARM_DESC(polling_limit_us, "maximum time in us to run a transfer i= n polling mode\n"); + /** * struct stm32_spi_reg - stm32 SPI register & bitfield desc * @reg: register offset @@ -266,6 +270,7 @@ struct stm32_spi; * @dma_rx_cb: routine to call after DMA RX channel operation is complete * @dma_tx_cb: routine to call after DMA TX channel operation is complete * @transfer_one_irq: routine to configure interrupts for driver + * @transfer_one_poll: routine to perform a transfer via register polling * @irq_handler_event: Interrupt handler for SPI controller events * @irq_handler_thread: thread of interrupt handler for SPI controller * @baud_rate_div_min: minimum baud rate divisor @@ -291,6 +296,7 @@ struct stm32_spi_cfg { void (*dma_rx_cb)(void *data); void (*dma_tx_cb)(void *data); int (*transfer_one_irq)(struct stm32_spi *spi); + int (*transfer_one_poll)(struct stm32_spi *spi); irqreturn_t (*irq_handler_event)(int irq, void *dev_id); irqreturn_t (*irq_handler_thread)(int irq, void *dev_id); unsigned int baud_rate_div_min; @@ -1355,6 +1361,55 @@ static int stm32fx_spi_transfer_one_irq(struct stm32= _spi *spi) return 1; } =20 +/** + * stm32h7_spi_transfer_one_poll - transfer a single spi_transfer by direct + * register access without interrupt usage + * @spi: pointer to the spi controller data structure + * + * It must returns 0 if the transfer is finished or 1 if the transfer is s= till + * in progress. + */ +static int stm32h7_spi_transfer_one_poll(struct stm32_spi *spi) +{ + unsigned long flags; + u32 sr; + + spin_lock_irqsave(&spi->lock, flags); + + stm32_spi_enable(spi); + + /* Be sure to have data in fifo before starting data transfer */ + if (spi->tx_buf) + stm32h7_spi_write_txfifo(spi); + + if (STM32_SPI_HOST_MODE(spi)) + stm32_spi_set_bits(spi, STM32H7_SPI_CR1, STM32H7_SPI_CR1_CSTART); + + sr =3D readl_relaxed(spi->base + STM32H7_SPI_SR); + /* Keep writing / reading while waiting for the end of transfer */ + while (spi->tx_len || spi->rx_len || !(sr & STM32H7_SPI_SR_EOT)) { + if (spi->rx_len && (sr & (STM32H7_SPI_SR_RXP | STM32H7_SPI_SR_RXWNE | + STM32H7_SPI_SR_RXPLVL))) + stm32h7_spi_read_rxfifo(spi); + + if (spi->tx_len && (sr & STM32H7_SPI_SR_TXP)) + stm32h7_spi_write_txfifo(spi); + + sr =3D readl_relaxed(spi->base + STM32H7_SPI_SR); + + /* Clear suspension bit if necessary */ + if (sr & STM32H7_SPI_SR_SUSP) + writel_relaxed(sr & STM32H7_SPI_SR_SUSP, spi->base + STM32H7_SPI_IFCR); + } + + spin_unlock_irqrestore(&spi->lock, flags); + + stm32h7_spi_disable(spi); + spi_finalize_current_transfer(spi->ctrl); + + return 0; +} + /** * stm32h7_spi_transfer_one_irq - transfer a single spi_transfer using * interrupts @@ -2026,6 +2081,24 @@ static int stm32_spi_transfer_one_setup(struct stm32= _spi *spi, return ret; } =20 +/** + * stm32_spi_can_poll - detect if poll based transfer is appropriate + * @spi: pointer to the spi controller data structure + * + * Returns true is poll is more appropriate, false otherwise. + */ +static bool stm32_spi_can_poll(struct stm32_spi *spi) +{ + unsigned long hz_per_byte, byte_limit; + + /* Evaluate the transfer time and use polling if applicable */ + hz_per_byte =3D polling_limit_us ? + DIV_ROUND_UP(8 * USEC_PER_SEC, polling_limit_us) : 0; + byte_limit =3D hz_per_byte ? spi->cur_speed / hz_per_byte : 1; + + return (spi->cur_xferlen < byte_limit) ? true : false; +} + /** * stm32_spi_transfer_one - transfer a single spi_transfer * @ctrl: controller interface @@ -2058,6 +2131,8 @@ static int stm32_spi_transfer_one(struct spi_controll= er *ctrl, =20 if (spi->cur_usedma) return stm32_spi_transfer_one_dma(spi, transfer); + else if (spi->cfg->transfer_one_poll && stm32_spi_can_poll(spi)) + return spi->cfg->transfer_one_poll(spi); else return spi->cfg->transfer_one_irq(spi); } @@ -2216,6 +2291,7 @@ static const struct stm32_spi_cfg stm32h7_spi_cfg =3D= { * SPI access hence handling is performed within the SPI interrupt */ .transfer_one_irq =3D stm32h7_spi_transfer_one_irq, + .transfer_one_poll =3D stm32h7_spi_transfer_one_poll, .irq_handler_thread =3D stm32h7_spi_irq_thread, .baud_rate_div_min =3D STM32H7_SPI_MBR_DIV_MIN, .baud_rate_div_max =3D STM32H7_SPI_MBR_DIV_MAX, @@ -2245,6 +2321,7 @@ static const struct stm32_spi_cfg stm32mp25_spi_cfg = =3D { * SPI access hence handling is performed within the SPI interrupt */ .transfer_one_irq =3D stm32h7_spi_transfer_one_irq, + .transfer_one_poll =3D stm32h7_spi_transfer_one_poll, .irq_handler_thread =3D stm32h7_spi_irq_thread, .baud_rate_div_min =3D STM32H7_SPI_MBR_DIV_MIN, .baud_rate_div_max =3D STM32H7_SPI_MBR_DIV_MAX, --=20 2.34.1 From nobody Mon Feb 9 11:51:48 2026 Received: from mx07-00178001.pphosted.com (mx07-00178001.pphosted.com [185.132.182.106]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9C88330FC3B; Wed, 17 Dec 2025 21:52:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=185.132.182.106 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766008377; cv=fail; b=FZpWtCA94QHPDNaavi/XnkSLmtKLj97nV1ho8F4IeI4Ninw/CbG6HLA2fZIWbvjzBjeVDmtS0ewLLBBDmaAJ3ZOxEU+Xk4Eo0sUI2Ot90Pq1USq6Pu1JoNcTaEBUXrDvlFkuIRRjTezZ2cSauLxPxG5WDTdhViRKJSdFM/v0q/c= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766008377; c=relaxed/simple; bh=fot0V+Hy2Wn8od9OpJOxEk7+tR8wuWl+PSLy9adtVAw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:CC; b=QJWlIpDnqu/+V3A25I9a5hojch2bK0tjfkUgqtVKS4iQGCs44hyb0d3Dej8u0YtEbkvAhoBipWMxhZpCyCfZmNxBaSl9caNX27KSNM5h8SFdQ13QbikPtvOE9CzAHua9dX+WTo00DzGotNhQAn+HhAAJ4Bc8op4zkh7CpMrX75U= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=foss.st.com; spf=pass smtp.mailfrom=foss.st.com; dkim=pass (2048-bit key) header.d=foss.st.com header.i=@foss.st.com header.b=aD9So6u4; arc=fail smtp.client-ip=185.132.182.106 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=foss.st.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=foss.st.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=foss.st.com header.i=@foss.st.com header.b="aD9So6u4" Received: from pps.filterd (m0241204.ppops.net [127.0.0.1]) by mx07-00178001.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BHLRYsu704927; Wed, 17 Dec 2025 22:52:43 +0100 Received: from am0pr02cu008.outbound.protection.outlook.com (mail-westeuropeazon11013015.outbound.protection.outlook.com [52.101.72.15]) by mx07-00178001.pphosted.com (PPS) with ESMTPS id 4b3xb71kfe-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 17 Dec 2025 22:52:43 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=RFB1YmZH+XCrfSjIT/hNd5SRhoDlp4Ncu8G7CYJUBvtoY+qspg7I+Xbd25T704YpvC3iZ5y97WnmMgFaDrTKSoPZ6FCem5pbq+nVmKBqA2V1zj8u7zQoO2kvkRhzHj06EuXPJGzvuxEB9HwFv7THz157hMllOYjqehptU2P6cqjFmCTBbCni/x+KCjKPgk2n+kMGO6shrBSl/E/anRsKF76NSC+V0onH2vb3ojulbC41nfE4qfGOHlQwfewBxr8HCh9+PkprS7oesaxmIUtwuxj5rge7Md3GErG24RNMjxhYn8eWK7OhSZ2gT1nye7JB4D06js2nTat9NoPsUcWScw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=l6sBscYzo6SF3yveg9SMhkC92zlzcwkWbT6RB8DHq2A=; b=KzJ4/I3lQIw/4ln0luck1UNPp+7c5nTo6k2Ity0wRYtRn2cT++3tBCnNRZSuyFA4txwllYYSDUWx6EEy8BWkd/0x+vlg4u5xQVVuIqCgY6yItqEJOq0gMwwwpcq8A3Ny4RxoyHqh21C6Q7p8i0nu0L3SmuV7hKngD5JdM8lXuHdjGTVQL4+BGlpyQfDrrNIYxBdXOMAkVzf0GqHYGOjyLEucjifKS0clRLFk0y64kaxRZBZoR4l5P4b76R+UgXhXpVf7fp4zfABrE8cyCSSQFkrMr5TZVz+NtIQz5/xGKmKWA9ntl4nkeErbIlupcHiOBdr7IV/Jz9Cln4WkUvurDw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=fail (sender ip is 164.130.1.59) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=foss.st.com; dmarc=fail (p=none sp=none pct=100) action=none header.from=foss.st.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foss.st.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=l6sBscYzo6SF3yveg9SMhkC92zlzcwkWbT6RB8DHq2A=; b=aD9So6u4sHFrD9gnS/WJYF+nPN+lumAv5TlRQDSagTmifgCA8kFF7TKrBUeOqBUt7K+dApSkVfOrG0vQDgp92C4L7wCr8x3bfUSmcgr0Hs1fAWPFF/eQKZoweHZZoSRJERkIhaBIMIUqTWFHhovr7zqfFmayCbHD7pCg7zrntCJdUXXEttIOiqHVg87FCqgrtZgd8F1tak1EUG3jOBHpsX04RJ5t+HSbDk/f4ryJYUOOyC+OPnV65ucpeJETfep+i0Pp85XV81rllbZ8Ce+ViAWL+p+S8+tCwsbFYZOYFzu5Q6qKEfcWIsnZNUYrFuZy4AAnDzDZZ98RqS+mT9bTmQ== Received: from DUZPR01CA0166.eurprd01.prod.exchangelabs.com (2603:10a6:10:4b3::9) by DB9PR10MB8120.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:10:4c2::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9434.6; Wed, 17 Dec 2025 21:52:41 +0000 Received: from DB1PEPF0003922F.eurprd03.prod.outlook.com (2603:10a6:10:4b3:cafe::b5) by DUZPR01CA0166.outlook.office365.com (2603:10a6:10:4b3::9) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9434.7 via Frontend Transport; Wed, 17 Dec 2025 21:52:52 +0000 X-MS-Exchange-Authentication-Results: spf=fail (sender IP is 164.130.1.59) smtp.mailfrom=foss.st.com; dkim=none (message not signed) header.d=none;dmarc=fail action=none header.from=foss.st.com; Received-SPF: Fail (protection.outlook.com: domain of foss.st.com does not designate 164.130.1.59 as permitted sender) receiver=protection.outlook.com; client-ip=164.130.1.59; helo=smtpO365.st.com; Received: from smtpO365.st.com (164.130.1.59) by DB1PEPF0003922F.mail.protection.outlook.com (10.167.8.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9412.4 via Frontend Transport; Wed, 17 Dec 2025 21:52:40 +0000 Received: from STKDAG1NODE2.st.com (10.75.128.133) by smtpo365.st.com (10.250.44.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Wed, 17 Dec 2025 22:53:29 +0100 Received: from localhost (10.252.10.67) by STKDAG1NODE2.st.com (10.75.128.133) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Wed, 17 Dec 2025 22:52:40 +0100 From: Alain Volmat Date: Wed, 17 Dec 2025 22:51:33 +0100 Subject: [PATCH 3/4] spi: stm32: properly fail on dma_request_chan error Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-ID: <20251217-stm32-spi-enhancements-v1-3-943348b8ff66@foss.st.com> References: <20251217-stm32-spi-enhancements-v1-0-943348b8ff66@foss.st.com> In-Reply-To: <20251217-stm32-spi-enhancements-v1-0-943348b8ff66@foss.st.com> To: Mark Brown , Maxime Coquelin , Alexandre Torgue , Rob Herring , Krzysztof Kozlowski , Conor Dooley CC: , , , , , Alain Volmat X-Mailer: b4 0.14.3 X-ClientProxiedBy: ENXCAS1NODE2.st.com (10.75.128.138) To STKDAG1NODE2.st.com (10.75.128.133) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DB1PEPF0003922F:EE_|DB9PR10MB8120:EE_ X-MS-Office365-Filtering-Correlation-Id: da48c637-5a82-4735-de94-08de3db69a0b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|82310400026|1800799024|36860700013; X-Microsoft-Antispam-Message-Info: =?utf-8?B?OUdXT1FGdHRtbU16ZFFJRU9RQjkvcnMrTXltQ0x3dlFiVThqUkxaSlRGVEFN?= =?utf-8?B?L3dRZ2EwbzBEY1Q0UEZuMXZJTHJndFY0cENpR1E1a01NYWVmYlk4SnRiNVR3?= =?utf-8?B?alJYT3hqZEJBY2hURWVKeFNrbDRFY0dMVXYxL1p0dm9ZQ2lSSTBmSEpBVWE5?= =?utf-8?B?MXpNbXgySEpZMHJRZmFZeXJYd01FYlBoSXhTeVVUMkdud21yWnBERmU2c05h?= =?utf-8?B?K3JBeVlXRWYzOGlGRmlzaEZQQllKeU43QlZra2tCN21VS2NNS2lUSjc5Y2tV?= =?utf-8?B?Z2c0alo3eHBYZCt1SjdXWnNjN3FRODhiY3JHbWpaK0lPQ2I2OGpiQnZ3cHJC?= =?utf-8?B?K21sRzRmWGRyTVk3OGVWSVR0OXFLTS9wMEw5a0E2UExaK0tRb1QrOTdndDl2?= =?utf-8?B?VWlYM01leWxtWkMwcTc0cWRnWXhBdGNUYjBKWDZWbHlaRVovWXJqSFBYakRo?= =?utf-8?B?bXBZQUJaRXQ0U2lXWW5qTzhNWjNzT2VlVDhiaWl2eG9mZktCVVpTeG5VQzNG?= =?utf-8?B?OEo1Z3g1TlVNZ1ZTcGxoTk1rNnQ0QkFzSnRDUjU1U1ZTZGh5bVFZTGEyck45?= =?utf-8?B?NUNJR20wcjdNa3NOZjhmQnk2S1J0UEdvRUx3Q1lOUk9QVXpnL0JCc0M1RXdD?= =?utf-8?B?cjVVMW1PMWVIakNPV2pIcjFzWU1SVUZaVm13bTh5TnJrY1Nwdmt2b3BOdm5q?= =?utf-8?B?WHl1dHpoSDU1cnJPUklCT1Yxempuam9qejN3SUx1ZVhhOEVpREEwaE5tTFRr?= =?utf-8?B?Y0Jpdm5ydlJRVzhDYVEzeklhaElNVTl3SXdVd0JvblBUYmIzb3lic0lJZHpR?= =?utf-8?B?NUVOQmVSSXFYbXNFYUNySFVSQXptZjkrbjVJR3R1ak9ieFVsc1cvd3dWRCtJ?= =?utf-8?B?UzB3VU1TYjBBcVRXK0h6T0F2VFJsbFUzMkZialVJR1pIQ1BxbVJnRGVVb3pM?= =?utf-8?B?c3FLRnFINnplN1JCRjBGWTlOQ3hnQ0FKVzdnS3FyMUFDUlBPV29hVDNZYjg0?= =?utf-8?B?N0cveVpxS3FtdXQwdmlITTRYZDdnaTcyMmxvdUdGbktDdTdham9hUkN5ZGdj?= =?utf-8?B?MWdkYmd6dFU4dlBESUNHL0RVa1FmVGNnOVBCM0N3a09iaWNDMHNWdXBhOU1x?= =?utf-8?B?R1UzTUJSdVpiZWJCTWQ4b2QyOWhLZmZDM2RxOHRpZDVEd0F2RG9iNThYaUdO?= =?utf-8?B?ak5OZUNtMlFZYU1LeVpjUFNURkltTmc1WnUzSC9mZHZoQWJPbWhRRmZoaUUr?= =?utf-8?B?TWNubDJKK1Q1MUEvOUhDM0Z4eFZlNk9SV0UyN3dMclp2Zml0ZUdDRFptQUFI?= =?utf-8?B?cTV2NEZvbnAvTWprM0ZadWkvdzY2eGtkUldxZDNreDF4NHpPMzJSTXl0Mk5i?= =?utf-8?B?cDZhN3VBb1haYVpUMTBEc1hLZHdGMjc5QmxLc0IxOHJKeDVCK3ZUQ3VYNGdL?= =?utf-8?B?VHBSNzJMZlJRMkxYZzFMUXRLdXJVS2I1c2xMVkpOd0RtL0p3MWpldkNUNTZQ?= =?utf-8?B?aytlVm9QUFVlTnNkUElYRmdWd1N5aGhtMDIyUkRNakF1UnFEbklVMFBqZ1Nh?= =?utf-8?B?c1pYeW5OYW15ZmNOcDkwQkMyUmh2b2RkUkV2aU1ZeW0vdXl5dUM1bENLTytN?= =?utf-8?B?LzIvYUtUOFdkKzB6UDRhanM5S0hkbmRUVlUzQ0p2ajM1dHA3a0tFMklFSllv?= =?utf-8?B?Vjk4ZnNjR2V0RU50NSthNzNwR0wvd2pNeXkyWjh5NmRoMGV0cE9ENzE1ckkx?= =?utf-8?B?Q29FZDFoY0RtTzg3TVJZaU94UHJzaEtvN2ZpdkcyYUM0WEhkSFNGczBEMUFD?= =?utf-8?B?a3VWVmxGdk5Ba29sYW9CNzdqQk54cFIzY2taSGJnRWZOenFtSE1PZzdpY1RT?= =?utf-8?B?OVkvU2RIL3JjTDJ2VG1JN3MxSjdSa1JHRmRkZWlKZVg1dVNEVjdFVWRhVlgy?= =?utf-8?B?aEpOcHkrSlFOT3VvSW81cUZmcGlydFp1b2wreVBDN0pqV2lkdWd6SG1mZGR0?= =?utf-8?B?eXRhMk1IekZNeEZMclRNVjdaYmRvdmpQQ2UxVU9XNlhQRmpEeGZXVmdxVm9V?= =?utf-8?B?djFIMWtpbzVNcHRiOFh5M0MxV0haYTV4cURCUFVzUDYyQ0J1NDJkTG45L2hV?= =?utf-8?Q?DKJY=3D?= X-Forefront-Antispam-Report: CIP:164.130.1.59;CTRY:IT;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:smtpO365.st.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(7416014)(376014)(82310400026)(1800799024)(36860700013);DIR:OUT;SFP:1101; X-OriginatorOrg: foss.st.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Dec 2025 21:52:40.9904 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: da48c637-5a82-4735-de94-08de3db69a0b X-MS-Exchange-CrossTenant-Id: 75e027c9-20d5-47d5-b82f-77d7cd041e8f X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=75e027c9-20d5-47d5-b82f-77d7cd041e8f;Ip=[164.130.1.59];Helo=[smtpO365.st.com] X-MS-Exchange-CrossTenant-AuthSource: DB1PEPF0003922F.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR10MB8120 X-Proofpoint-GUID: fG8ByLAPY6yBcqCiNWqkWma77LUEAmp4 X-Proofpoint-ORIG-GUID: fG8ByLAPY6yBcqCiNWqkWma77LUEAmp4 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjE3MDE3NSBTYWx0ZWRfXzDNAuleyebRQ Tngqa+KuqWCSXHYRR2NHvfwIWpBPu2A78bkTB8n2xvQBFcQgarJguh6b8vrIj/zSKvAAKjaplfG 8cloJXu6kndp7HmZLJxjgHRmXEAcQV2z+QiT4JJs0xtewyZEZyatPCuCIj74sar4IcokHOiRHuq xZ+iJELg+ZWmvjATwm5pClD78XukS8tVXgUj0Wvc58A/8yT/tkt9dfzolh6taZJRyh5vxN1Kp5K xaUlBkxoH6Igk1rHy98rJOXYgXTvt/pm8Jx4M1o3UaegC93W+HovqeUhaVTCLk2aCqLqdVJDHaC n4+DOgD1itMg5+5IarPUQM7mYvO8XBsgR2vdWjsA+olTVAckEanXPyrUdoVnMUAClcZASNnhmQm HVkJs2ZCiBzbObVyjSY++Y6JogaKKw== X-Authority-Analysis: v=2.4 cv=NZfrFmD4 c=1 sm=1 tr=0 ts=6943262b cx=c_pps a=Q/FndMtKwbRzRApk2AKv9A==:117 a=d6reE3nDawwanmLcZTMRXA==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=tougUffuSCAA:10 a=IkcTkHD0fZMA:10 a=wP3pNCr1ah4A:10 a=s63m1ICgrNkA:10 a=KrXZwBdWH7kA:10 a=VkNPw1HP01LnGYTKEx00:22 a=8b9GpE9nAAAA:8 a=1dThCIPtdYaSHmSm3WoA:9 a=QEXdDO2ut3YA:10 a=T3LWEMljR5ZiDmsYVIUa:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-17_03,2025-12-17_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 impostorscore=0 bulkscore=0 malwarescore=0 adultscore=0 lowpriorityscore=0 priorityscore=1501 clxscore=1015 spamscore=0 phishscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512170175 Correct handling of the dma_request_chan call in order to avoid misleading warn message if no DMA is provided within the device-tree and moreover fail if dma_request_chan has returned a valid error. Signed-off-by: Alain Volmat --- drivers/spi/spi-stm32.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/drivers/spi/spi-stm32.c b/drivers/spi/spi-stm32.c index 353ea5b93e0a..8f8968383ad0 100644 --- a/drivers/spi/spi-stm32.c +++ b/drivers/spi/spi-stm32.c @@ -2484,11 +2484,13 @@ static int stm32_spi_probe(struct platform_device *= pdev) spi->dma_tx =3D dma_request_chan(spi->dev, "tx"); if (IS_ERR(spi->dma_tx)) { ret =3D PTR_ERR(spi->dma_tx); - spi->dma_tx =3D NULL; - if (ret =3D=3D -EPROBE_DEFER) + if (ret =3D=3D -ENODEV) { + dev_info(&pdev->dev, "tx dma disabled\n"); + spi->dma_tx =3D NULL; + } else { + dev_err_probe(&pdev->dev, ret, "failed to request tx dma channel\n"); goto err_clk_disable; - - dev_warn(&pdev->dev, "failed to request tx dma channel\n"); + } } else { ctrl->dma_tx =3D spi->dma_tx; } @@ -2496,11 +2498,13 @@ static int stm32_spi_probe(struct platform_device *= pdev) spi->dma_rx =3D dma_request_chan(spi->dev, "rx"); if (IS_ERR(spi->dma_rx)) { ret =3D PTR_ERR(spi->dma_rx); - spi->dma_rx =3D NULL; - if (ret =3D=3D -EPROBE_DEFER) + if (ret =3D=3D -ENODEV) { + dev_info(&pdev->dev, "rx dma disabled\n"); + spi->dma_rx =3D NULL; + } else { + dev_err_probe(&pdev->dev, ret, "failed to request rx dma channel\n"); goto err_dma_release; - - dev_warn(&pdev->dev, "failed to request rx dma channel\n"); + } } else { ctrl->dma_rx =3D spi->dma_rx; } --=20 2.34.1 From nobody Mon Feb 9 11:51:48 2026 Received: from mx07-00178001.pphosted.com (mx07-00178001.pphosted.com [185.132.182.106]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BE59430FF04; Wed, 17 Dec 2025 21:52:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=185.132.182.106 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766008377; cv=fail; b=Pg/W2SkPiBsqoT1/MTc9CJUWbMPvUwTCua6Z8JXLIeTyGgQB4hBSTZ1i55LH0L9Ok/STfaordl2aaKBYNiq03PSFlpKXnqFFuuUzlSPpYAczUQN2rtj5irn1c2NeSnj67gbOhvbJovezcsD815LZwAUByOVMO002pZxFUr4N6Xg= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766008377; c=relaxed/simple; bh=WLJ4U7X+t2NjoKk7W1/S4D/d3hver4K6CDSK06rDFBs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:CC; b=BUQXpY6w2NFAax7x5jWIypphuP8wz3AS6gH0qMUjVn9PkfiX3DOpOgX0zBfM0L6PkD4zsV6xAXOnbanspS15m5ebZXwnIiN9BDcWWp27VtRqmgnqMCnEdH3nnm80UHMXKDBEL+TwRNPvsM/iO74v+eL3/VtVsBX9Wmcoo6Su740= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=foss.st.com; spf=pass smtp.mailfrom=foss.st.com; dkim=pass (2048-bit key) header.d=foss.st.com header.i=@foss.st.com header.b=gQHrqovs; arc=fail smtp.client-ip=185.132.182.106 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=foss.st.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=foss.st.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=foss.st.com header.i=@foss.st.com header.b="gQHrqovs" Received: from pps.filterd (m0241204.ppops.net [127.0.0.1]) by mx07-00178001.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5BHL3NLh664755; Wed, 17 Dec 2025 22:52:45 +0100 Received: from am0pr02cu008.outbound.protection.outlook.com (mail-westeuropeazon11013065.outbound.protection.outlook.com [52.101.72.65]) by mx07-00178001.pphosted.com (PPS) with ESMTPS id 4b3xb71kfg-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 17 Dec 2025 22:52:45 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=h/jKN9GLcDmcPm4Ugjp++7nAxgs+gVqs50rJ3R14VonStRx0xrAO9Ny3qcxWwQAwpQRK1nmpVF/y0Psd6O2ccX87SgIKDnBXrYcV7TEBtqSnnSHD0aNHl4sNy48ped43oRCzWum+31oHi9FH8kfo7ABJ2FSKBQylajtFrtmyiQgp9wGJM9PstdrObGL/OOBcFV6XgTN/XGphNMBMKXeqM+4n++bwmlTCDRausvUeWlqHMVr5NTuNMYFqWfZghN/AIaCT1EslhT6Oixru8oiO7x4aAoMBnMSV2xIIQ+NcFHMxmMbU4WI/Wlyb7S+OEXNcCKUeVIM6C5mskLGXab4URA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=GTdOjoUTe+POBvl854/wkgwu/9d7NJKuLPeBBZkOHOc=; b=bWOkE0IQbeJQkzkgqy7niMiHuz17d17zQgFsQ7PXLVa8yoYl5+Wf9nbC9HpRppl09jCy5b8Sqbe2NS2XjBevUa1e0FXfwBrjj7EauO0u1UWI/mK9WLniqwziOCgupdT/h4ESB8KkWRF0g9CoR0C1L1rjlmagCvNnTv32I+H0z0/g+bYy93GC1+sOssSDXKGyqA8Dn2NLm41MEhbh0MVhewNNDuPkBHjQdtxnZsC0D3NJaFQjiz2/GUA2UBfiNjXf/k4nS5/nTnEyfMmJizUNns7Q+d+O4pxnCFlFdtfJJQHxQ7WwGlqHBtD3heyhHUfjyUDVBF3d99cFt1UWdG1MPQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=fail (sender ip is 164.130.1.60) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=foss.st.com; dmarc=fail (p=none sp=none pct=100) action=none header.from=foss.st.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foss.st.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GTdOjoUTe+POBvl854/wkgwu/9d7NJKuLPeBBZkOHOc=; b=gQHrqovsaRPsJJFERxNrXR4QdxWTTt0tbW/ARRN6AtbQZvleSt9sHCq4ekIUQpMTBTcPeNssQID2AFDYEwxNovRkq5P0O0M+pnKJrrKpEIb8t6xkUhC++LtnUadF9Pzn/aVBTuGh++FLx6SRIUveG3wI3McMnvmT+Shzd9DU9xVfGJpqLWQyDWfFnzZovs5RwOubghPGR7ji/96HDev5lKYaW8BkSQ28SCjk5hbDFEIIqRkhIuIccLIF0drBoCrsgWKvTr4T3TzxgH4z6qhEwQPq/JSwJ9hNIJ1j8dJkZi+W5GGg6IrnRHx0hxuUbv560BWVKwCMOw2y5eYhTu6BwQ== Received: from DUZPR01CA0034.eurprd01.prod.exchangelabs.com (2603:10a6:10:468::10) by PAWPR10MB7867.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:35d::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9434.6; Wed, 17 Dec 2025 21:52:42 +0000 Received: from DB1PEPF000509E5.eurprd03.prod.outlook.com (2603:10a6:10:468:cafe::27) by DUZPR01CA0034.outlook.office365.com (2603:10a6:10:468::10) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9434.7 via Frontend Transport; Wed, 17 Dec 2025 21:52:41 +0000 X-MS-Exchange-Authentication-Results: spf=fail (sender IP is 164.130.1.60) smtp.mailfrom=foss.st.com; dkim=none (message not signed) header.d=none;dmarc=fail action=none header.from=foss.st.com; Received-SPF: Fail (protection.outlook.com: domain of foss.st.com does not designate 164.130.1.60 as permitted sender) receiver=protection.outlook.com; client-ip=164.130.1.60; helo=smtpO365.st.com; Received: from smtpO365.st.com (164.130.1.60) by DB1PEPF000509E5.mail.protection.outlook.com (10.167.242.55) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9412.4 via Frontend Transport; Wed, 17 Dec 2025 21:52:41 +0000 Received: from STKDAG1NODE2.st.com (10.75.128.133) by smtpO365.st.com (10.250.44.72) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Wed, 17 Dec 2025 22:53:26 +0100 Received: from localhost (10.252.10.67) by STKDAG1NODE2.st.com (10.75.128.133) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Wed, 17 Dec 2025 22:52:41 +0100 From: Alain Volmat Date: Wed, 17 Dec 2025 22:51:34 +0100 Subject: [PATCH 4/4] ARM: dts: stm32: add spi1 sleep state pinctrl on stm32mp157c-ev1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-ID: <20251217-stm32-spi-enhancements-v1-4-943348b8ff66@foss.st.com> References: <20251217-stm32-spi-enhancements-v1-0-943348b8ff66@foss.st.com> In-Reply-To: <20251217-stm32-spi-enhancements-v1-0-943348b8ff66@foss.st.com> To: Mark Brown , Maxime Coquelin , Alexandre Torgue , Rob Herring , Krzysztof Kozlowski , Conor Dooley CC: , , , , , Alain Volmat X-Mailer: b4 0.14.3 X-ClientProxiedBy: ENXCAS1NODE2.st.com (10.75.128.138) To STKDAG1NODE2.st.com (10.75.128.133) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DB1PEPF000509E5:EE_|PAWPR10MB7867:EE_ X-MS-Office365-Filtering-Correlation-Id: 975fc203-df03-4ad9-17aa-08de3db69aa4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|1800799024|82310400026|376014|7416014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?NWJSQUZWYTBaWUVIK1FuaVlyZE1zUjBwbktsaE9Za2hZVEtGRkl3QUY2dnJv?= =?utf-8?B?MGJZSWtHWUJOai9PSisxeDVhM1haT0pPbERQWW9wbEF5UUZBTFEvV3Y3NDRj?= =?utf-8?B?dkF2aFIzeDZjRUIwN0pNNmVjdkVkZ0hldFozdTVjZHhlZ1g5UnQvRlB3RDY5?= =?utf-8?B?TGdaVnk2Q2NLMTlUVitqNmFoNWl5SW1iM1U3dnk5Szl2bTBKejRHWjVFSWZl?= =?utf-8?B?aTRqVVpWTFlURGZCd0RFZmY5WlJkWnZKdXdwT1YwVVQ5YmR0NkxseFBJMWpl?= =?utf-8?B?U25wQjRzKzhEZjlTS0E4aVhRYmF2ekh6TklXTE5kd2RVeFAxcXBoZXdPaFBn?= =?utf-8?B?Sis4d0s5Q0NYaDJxVytPOTRhc2VQdG5IamZJRXh6U3hCZzFnMkpldFVER1dE?= =?utf-8?B?TVg2QW1OZVdzeFVmOHA5bTlaMWRNaEp1Y0JxU0JwdG9QMjFjS2JnOWZmSEVL?= =?utf-8?B?c0xyeTVSTk9ZOEpHMkR5a2ZZemVkanhTOU9Ec3dxOXZKVzc0VFJsOHZKaTRp?= =?utf-8?B?NmxiRHBqc1pNcDRCRGh4a0NWemJiaDZvZ3FOd3gxdHBnSjNEWTRqUC9temgx?= =?utf-8?B?bGRwT1F0MHc2YUU1OFVqR2lDRFowVTZjd1FrTlJPbDhHSlROOFNGaUxBRFVW?= =?utf-8?B?SE45RlM3TU5QY29uODI4eGZoQXVmK1VzNTAwRDEwQzhGY0Rtc0l2T0hjMkor?= =?utf-8?B?OGYyc2szSDcyOU1ibzBvYVBDNFpXNDNqU0JZaFVBak5KK0dsbjBLNWVOVkw1?= =?utf-8?B?ZHI3bnhqZEFWN2l1c3NUNy9Sa21GcExYY0Q1Sk5NdHY5MkE2RGx2M0dFS3Vr?= =?utf-8?B?aU1BR3lVL2RFRDhUTUdEMkdBUlJkNVkzei95Y1Nsb2gvU1ZXbXI5U2swQVBZ?= =?utf-8?B?NlVuT0FJVXhRNFNCUWZuS0daM1ArOGZiM0xnRnRFUlZlWGgxZTlYQjhNdGZM?= =?utf-8?B?Ukliby9QdURRNzlHdnJpOTlYMnNvS0VSOVV6WlFhTzVJNDUwSjhaZXYzU091?= =?utf-8?B?dEtnNGl3RnVQVk9GMjErTXo5dW5zYW92a0lYOTAxcTNZVE5tbFB2anJNZGR3?= =?utf-8?B?RXZ0OVd2S2NSM3JManU0eU5yZHVLc2I4b2pxRjI2dkVTMGlrOFR4Vkx1NWNy?= =?utf-8?B?Si9La1RrR2VXVklkZnYyYktOM0Z3L2VBdWNVU2c4VWw4U0hhZlZZTFlvVWpF?= =?utf-8?B?QmUvTnVEdWFNSXM3QmRoR25Pb3J5aW1wVldMMUFoRHg0NkVPOEwrZFV0Zmdn?= =?utf-8?B?OVJNSXFYV2Y3OHNEN2Zhby9Rdi8wVFhlZmpIcEZvYTVPYXIvMFdnU3doVFhn?= =?utf-8?B?THVRVUdKN1RSNDlnOWU3V00wSHQyd2tPYlN2MU1YU2NwLzRaS1MxVnpCZmF2?= =?utf-8?B?cGlQT2dQbEhsdXI3TlRLakZienpLb25NU000RlI3dEJOQzlQREppVU1janFl?= =?utf-8?B?WHIwQUh2ZUlKVGI4QW00L2lHRnh1SDVSQU1RUVY1RDR3WU9oMDNwc0V5QXNR?= =?utf-8?B?V0s0dVNzaFdIYm1MSFg0UmJxUHQ3emVQa0h2UVdHVGtPSHE0WldDanZEY09Y?= =?utf-8?B?K3l6K3lqL1hGMFJSUlY3YnplVWJ6U1RwUEIvWW5JZ1lZM1VjOUo1NXNvaG5S?= =?utf-8?B?VkVxdkRQVWlWT0MyaGcxLzRxQkVpWUROQXp6QS9zYUx4MUpGL3JYVFo0M01Z?= =?utf-8?B?b3FvaEY2UzBNVk5IUzlXYVNKSm5jL0Z2TXZwcS9xYkZBQTJOSS94WnZqeW4x?= =?utf-8?B?NzRlUFExODAremRBbHZxRDJHWGhaSjltZG05MnpxYVB4R0U3M0pSa09MN1pj?= =?utf-8?B?YnB6U2NiS1NxVktwVmNPc1hoRTNGU2t4VEkrMHBLTktzY3dza2owWjA3azVS?= =?utf-8?B?UFhTVzBqMUZPaWtueDVKTWR1Umladnk1bnZKaDRNdHRDWHBrb3NBU3RWdUFa?= =?utf-8?B?TDkyaFlCRTdqS3diV2FZR0lpWFF5cFZTRVN6cFZQK1Jsc3BSNUR3OFducmll?= =?utf-8?B?UitGTkszL3FTelRPaHpVV25XcS9GcVlaWmtlYWdrbXhHY3ZiUkRMdDBSMlU1?= =?utf-8?B?U28ydDZiczZJUFV3NUExK0hnYm13TzJHUEppYmhwSzBlL1ZVMnZ6NVBNR1BM?= =?utf-8?Q?FBVA=3D?= X-Forefront-Antispam-Report: CIP:164.130.1.60;CTRY:IT;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:smtpO365.st.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(36860700013)(1800799024)(82310400026)(376014)(7416014);DIR:OUT;SFP:1101; X-OriginatorOrg: foss.st.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Dec 2025 21:52:41.9868 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 975fc203-df03-4ad9-17aa-08de3db69aa4 X-MS-Exchange-CrossTenant-Id: 75e027c9-20d5-47d5-b82f-77d7cd041e8f X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=75e027c9-20d5-47d5-b82f-77d7cd041e8f;Ip=[164.130.1.60];Helo=[smtpO365.st.com] X-MS-Exchange-CrossTenant-AuthSource: DB1PEPF000509E5.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR10MB7867 X-Proofpoint-GUID: 2Nh0JfcFvGecuzPg0uJaO-UnpjGn9nIK X-Proofpoint-ORIG-GUID: 2Nh0JfcFvGecuzPg0uJaO-UnpjGn9nIK X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMjE3MDE3NSBTYWx0ZWRfX+NliNzpWDIkx iWbHjqZOSaBT3p20c+ItSZm0E6/qTLDduHBR5ofeLpEXonGiQzc9oDoQvFOIMnU26lVZ0GdXHeY sQ0iOmpg6dJqgsi24uD3/SAB8Zg4N0oTqjgTnyP/gkWH3TloLHsDRdtPFsthSn9lJd45Nu0Jrro 0h2AzjNZHu+l+iz9SqKnKQI5nGfd1Alg+k93k+httyPMP3xwZWWJ8dRArh49t43dSHdxwcRaGSh 5Z/xRTigblwBqwFCXQmCUXdX0R9v+qCmTTFV6Yajvy390GINlsiBbZE39IlINg1lCYdpsqX0u18 F2ikJeyI4aYU8egKq7UUd0UJRv2GlJM2fFKXOn62MRTW0SiksyZqB5vY8IcLUAVutwtDqgzb3mW ZaBhiWTXO4+f6jyCid6mWCyK8fyv7Q== X-Authority-Analysis: v=2.4 cv=NZfrFmD4 c=1 sm=1 tr=0 ts=6943262d cx=c_pps a=92vhbJtyMJZJ2atsj87Pvw==:117 a=uCuRqK4WZKO1kjFMGfU4lQ==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=tougUffuSCAA:10 a=IkcTkHD0fZMA:10 a=wP3pNCr1ah4A:10 a=s63m1ICgrNkA:10 a=KrXZwBdWH7kA:10 a=VkNPw1HP01LnGYTKEx00:22 a=8b9GpE9nAAAA:8 a=LcYmuGOQLzMn2Ft58YMA:9 a=QEXdDO2ut3YA:10 a=T3LWEMljR5ZiDmsYVIUa:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-12-17_03,2025-12-17_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 impostorscore=0 bulkscore=0 malwarescore=0 adultscore=0 lowpriorityscore=0 priorityscore=1501 clxscore=1015 spamscore=0 phishscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2510240001 definitions=main-2512170175 Add the sleep state of the spi1 instance on stm32mp157c-ev1. Signed-off-by: Alain Volmat --- arch/arm/boot/dts/st/stm32mp157c-ev1.dts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/st/stm32mp157c-ev1.dts b/arch/arm/boot/dts/s= t/stm32mp157c-ev1.dts index 8f99c30f1af1..4e46d58bf61f 100644 --- a/arch/arm/boot/dts/st/stm32mp157c-ev1.dts +++ b/arch/arm/boot/dts/st/stm32mp157c-ev1.dts @@ -296,8 +296,9 @@ &sdmmc3 { }; =20 &spi1 { - pinctrl-names =3D "default"; + pinctrl-names =3D "default", "sleep"; pinctrl-0 =3D <&spi1_pins_a>; + pinctrl-1 =3D <&spi1_sleep_pins_a>; status =3D "disabled"; }; =20 --=20 2.34.1