From nobody Wed Sep 30 13:55:39 2026 Received: from OSPPR02CU001.outbound.protection.outlook.com (mail-norwayeastazon11013038.outbound.protection.outlook.com [40.107.159.38]) (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 807872D2397 for ; Fri, 7 Aug 2026 23:11:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.159.38 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786144299; cv=fail; b=uFjMiT6wBR3Lh0AiQ+ZNwkLsi3ki5fT3kZzqNfOUbjaXnyrv2qYszTk0uPo/+QW333QxEIm3oWIuAzTe8ff9ogOS76D7W3kPf38E8FexICEy09TZBRne9YkpoJ5WdTyc6oZVKP32WRQFKkMvjz9MajFT0qlg2QgVNV+JZsIF/qE= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786144299; c=relaxed/simple; bh=3tY097RG6LnxpJ9Z0PHszGD4xamB4gNp5HREqUuMiDI=; h=From:Date:Subject:Content-Type:Message-Id:To:Cc:MIME-Version; b=FRdsZMdWMCeyfaWJ7CFzJbj/rSqJOgcmKUrEoPG6mNw6isXSPJbkzyrF6ATj028LIh0DB0L7kbEPiHRZshlgglKqW9vKa4UpNe+d2ZmzxXWNUrpQUaP2lz6kyiyPriXjGd1V6Kl3gc24Pi6q0PmNlBGY+BcYTgZuh7YkinTswgY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=VvitX/RN; arc=fail smtp.client-ip=40.107.159.38 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="VvitX/RN" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=MIoLBVc4mD9N4Gci99/Ic5swakK6CjAH5seAIKAPe+ZTlcs2T1Ni/ZqpbkI7bqrBzIJmMdYd+gA8OVLKxokxw8/9zp/SLJxER6u/oIZrczcWpS8M1kI7JO1g2yQKhfH8oVuNZQaKDzpdV+lYDNlASxKuY0Dmo65ck9fyVcm3flf1FmuwjPEB3LJwlfj38SmfFQzwvtk8GGbJmqsEg+G9zYXDVlr6YySnece0/yxI3XxqDXbSq1Ms64dyWGB1ZZroQfL/F29no9UAftfQiLV4g8xqn0Hj5dFCY4BrBEdqyinnFGd3VMGTDIIbO4aylMuVehgWd+xEyS/gHVuoiDSU1g== 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=Zuh/8ncmpcufKvT7wXyx/jUcDchZxEnTb9gMEnxwmW8=; b=i7Au0KIvOekhnedqxVwNACvtrw6SB/UpEWHyia//n9eyGPukQ+gxF2C1SFCUgFEMtjQqjRy0CakqZkAv7M1NytAjhOyZSxP1na83rUK8xt5eeFLGO9tYqachx4Pi36nDi754iHNqU82qJFmLPwgEdJiUQdeSt1jtDiv65H6yu/lYt4RjbkOedH+6g3/yqyQXRUoQcSN+ZkZ2n3doms/9E0ihmbvXlCdZyWk2sPqij1KY/L/m0f/qQ/sRvBLYT9VznarYPvmlwtwjqRLbzc12dAMjG2b7MMAgQh5wmfDzt5X3MZsFQN5OodkNXKJ/qmWdqE+s5ndUX/Fh7mwCwR5ysw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Zuh/8ncmpcufKvT7wXyx/jUcDchZxEnTb9gMEnxwmW8=; b=VvitX/RNza9uF4Yq+DvTvwdkN1s/qiEJjfvhP132De580SjZfCjtVHpqpyUZah2WnnKoMrAknM+Et/H6GteUTo2yu90PQlrn4TugO48leXuwXT+mzefFJW96b8r//A6vl3zdmXP92uAnqD6UP+aSzMwt3iUdk6/3TWJgnxcJoxEq69rHNf7JPzukAeQxHfNIi2S5aMx6dOtC+mmW4009/EgyY591GSJrJ56heZ2VR+Nuscdx4C/MkHgjqanBMsdbNPqA1qE4UUEcqSfiQ8xGbgMrFs0aRk8Xpyx3WjE65TuyT2ijqea+vIuMro88NQdWys/Uw0WFYM1bgVBJXOFqCQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS8PR04MB9079.eurprd04.prod.outlook.com (2603:10a6:20b:446::12) by AM9PR04MB8636.eurprd04.prod.outlook.com (2603:10a6:20b:43f::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.292.24; Fri, 7 Aug 2026 23:11:34 +0000 Received: from AS8PR04MB9079.eurprd04.prod.outlook.com ([fe80::9761:3d78:e9db:2308]) by AS8PR04MB9079.eurprd04.prod.outlook.com ([fe80::9761:3d78:e9db:2308%3]) with mapi id 15.21.0292.022; Fri, 7 Aug 2026 23:11:34 +0000 From: han.xu@oss.nxp.com Date: Fri, 07 Aug 2026 18:11:27 -0500 Subject: [PATCH] mtd: spinand: Enable QE on all dies Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260807-spinand_qe-v1-1-c102c79834a3@nxp.com> X-B4-Tracking: v=1; b=H4sIAB5mdmoC/yXMQQ5AMBBA0avIrDWpkhJXEZHSwVgUHUQi7q5Yv sX/FzB6QoYyusDjQUyzC0jiCLrRuAEF2WBQUmlZyFzwQs4426worNVJVshM9TqFECweezq/WVX /5r2dsNveA9z3Az0aUVxuAAAA X-Change-ID: 20260807-spinand_qe-dd6148042f63 To: Miquel Raynal , Richard Weinberger , Vignesh Raghavendra , Peter Pan , Boris Brezillon Cc: linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org, Han Xu X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1786144289; l=1898; i=han.xu@nxp.com; s=20240131; h=from:subject:message-id; bh=0d93hNvYMm85ubs+Gev58mySFVNTaWHnF+iu8jla13I=; b=RTSw3lPFrtA/lfQTCWBjNuXdRoWE++eTaDDOFx2yw2Tqwf4bn98eBxNw6rgEh6VVj5LI5DCg/ nQDy02DgszPAkQBsfvqWLX4Rh6gDxHG9bBtkspL7rzu89yMDApTQgtT X-Developer-Key: i=han.xu@nxp.com; a=ed25519; pk=XSryOlQ4EKXqt7ZHz2D+BcDu1AWYF0m5bX48xQOVF5A= X-ClientProxiedBy: PH7PR10CA0013.namprd10.prod.outlook.com (2603:10b6:510:23d::9) To AS8PR04MB9079.eurprd04.prod.outlook.com (2603:10a6:20b:446::12) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB9079:EE_|AM9PR04MB8636:EE_ X-MS-Office365-Filtering-Correlation-Id: e56772ac-b1d7-425f-77f3-08def4d939aa X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|23010399003|376014|366016|1800799024|19092799006|18002099003|56012099006|6133799003|11063799006|10067099003; X-Microsoft-Antispam-Message-Info: 3Z6Z1xL4mDI1iuFo0kwp7Ycdh7yDEBVO7FjPv0JW6BnC6X3gykoV+VY8DTUsj801GCgx1s/+qpvNFY39SID/HCEbBxAI/BurO+S6nPCXKPyKj6YaGyLkcvplMflI2c8DPyXn2+RRFXwL1ICzR3po5iuemeou6BdpFYU8qLZkljXgvq0ZpJkbX9CbFK23oXsQ4C0G2cP0mflpo52nUrH87b46+q36IxavDoiixmbP/WYK7wT7yuAUKFarjwi8QtcXMTvnEUWVSQHgDYOGH/ncG6niA4zrMXki+mTYeLCKdAG6/YG2AMpkwwl5KNlaF3VYkrLKNz5BORyuEvndxawQBd7PZmtgNIlycrx7eVTwkE5tutc/cBuHNfeyJMvAvzzjdj+jsk7UHO+aBRrBYs/5C/rIEq1nYvfTPCFK8yM+8kAN35Nz4aTz0gEyRdQc1gP0OGUQP8QKsW3yXIR5Q2/iAntk2AFFY1j4dsYFiIUMK9AoZdknOmNljj7aQxQ5b+D882VAnPuJeKRqWo4Nt4takwCbTQEvF5sSk5WOx9m/n8QX8Pm78/PeRSVEsfn5Iknc+vhwlyZG84uYAPA1Hrf1A+DDCs9H7GZpEoqV60kyTau/4wrabvSPrMhWIr9+iDVOQ7Ziltp9YJgDeGVQ3eXQudZLs3KV0Qpdok9BPH42HNk= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB9079.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(23010399003)(376014)(366016)(1800799024)(19092799006)(18002099003)(56012099006)(6133799003)(11063799006)(10067099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TWRLcjlLMHVGRWJCVkRMRDFXdlk5MnpPNWR0cGx4NllrLytCL1ZDOWJ3YWQ3?= =?utf-8?B?OWErVmp1ZFhrWC9MRVd5TDFLWjZEbmltWEE0WTVRc21vV1dUT1hzd3hVZEF5?= =?utf-8?B?NDdwRnA1MDIzL3BNOFdBcjhQQlR4N3kyRHpCcXYwZG90YTR1OXNpQlNETmRM?= =?utf-8?B?cysvMjVFeUVMbmM4N0JnbklIam1XeEVKRW5QSU5BV2o2M3hiQXowcFo5aHo2?= =?utf-8?B?Z3VHTzVlODFoUWtOOVpobDVweFNteGkzNGhKVkFpR3VLVng5S3hMQXRDbWdQ?= =?utf-8?B?NzZsTENuNitCdk01Ukplb3JRUTMvSVUvMjZVNHR4OENrSm9wUmJtR3dmcjA0?= =?utf-8?B?cGNUN0NGOHIzZ3M4a2YrNkJpZVNEL2p3ZTJhUnphQTU1bXpnQ2U0QnJvMmlC?= =?utf-8?B?VjNZUThxRWdhZG8yVW14R0dZMkV2MHFKRUJjVGZHbkdSUUo3aEVhbkk3K2N4?= =?utf-8?B?eVl6VGNNZVpPTEFSVDFsMWZ5elFSbVM4SDBZeE1hZ3ZKOFpWVW9hVmJvaVM4?= =?utf-8?B?YkJKTTJVWFEwbVRia2VTN3pBTlJXeE13TTk4M2pRa1ZhU2g5MDJpeWFmWGVI?= =?utf-8?B?dVNPT0h4cmROZ0l0aWNwU0FQQnJxcnNIdSs4dlpKTEM0dTUzVFJMYWkxQXl3?= =?utf-8?B?T1ZhWFhMRE9ZZWdUaElsVitBb3Eva2ZyanRYbWR5TUlhS1RnSmpvT0d1MWlx?= =?utf-8?B?L1pyOW9FQlVDNnFtQ2Z3UldUK0Uyd3VJVWNHeVY0TFdJeEFvNjJuTEJDNHlD?= =?utf-8?B?M2NpUXpEbHhtdzF1NWRaVXFrZVk0a1c2Ny85R0JQd1dGNmx4SkI1VHYxalY2?= =?utf-8?B?VW5PQU52UUVpNUNzMkd3WmttTEZmL0haS1FNeWhienUzMm5Gekg3eVRZRTcx?= =?utf-8?B?akF1djJjV29VanBKSUhydVNaMkVzWkVwVXAzbUMyUnJiV051eHZDWFJvbW5q?= =?utf-8?B?emQxQjIweVFPZHREQjFmejJHVld0NHNCSURnNmY4R3NCNmF1aGFzcHFSTVI2?= =?utf-8?B?V3R1MnRUeUFtL2ZmWUx6QWVRRnRmdmV4bnN0LzQyTTBJdFkwV0EwM2Y3NTE3?= =?utf-8?B?OXRWcGhURkVvc2lNVTBMOEZXSzBTdE9Xd1MzZmUrZUZib1piTmtqRzlHZzNQ?= =?utf-8?B?UXIvUHpUTkpocDhLK090SmhOdmdrbGU3eU5SRXNJS3oyRE5MdERmMmRXTkFn?= =?utf-8?B?N1U0YWxucjUzVDBaOWRRWTJ4RGRTZlBhY2hpQTZjSVJiQyt6Z0wwVkNmS01m?= =?utf-8?B?ZkxZcE9GYVY0cEw5NEViaWlXTUdlMVRmQSt4U0RqanZWRmVyd3BjWE9OejJR?= =?utf-8?B?Tm1LdUMrQkFLK3ZsbzY5a3NvV2EyQSt2aE8wRS81VHVmalBNYXNRbUFGNk96?= =?utf-8?B?YXN1dytVL1VJTS95RldBQTh4ZHRTZW1OV3ZLV20rai9nbmFXbThkcG1ENzFo?= =?utf-8?B?NmlraFJCRHZHZVR2a2JSdUhVWm5ZUjBsa21pQ1ZhUWtaYy9HSUc2amZYZGpX?= =?utf-8?B?UTVsc3laZW9TVlljRnE3RnRLaGtHQU1iNHVEZ0h6UVQrcCt1dlY2c2FtcGZP?= =?utf-8?B?NGJnaE01QnZnQ1JYK1o3Q2xOSURKOGZPcncwZk9DR2MwQTg5QzFoZjlmVVIw?= =?utf-8?B?QndwbnprOXlYdERQTXozWHVZZzFQQ0ExZ3F0emlUbDV3aXdlQmFrWWgwdEZS?= =?utf-8?B?L3FpSjNLckxCM2ZqcTJ6QjVndHA5QVIwV2tZUURXSmwvMXdkZ2V4MmtwL0JV?= =?utf-8?B?amhVTlIycE1sZmxSZHVmQThQdU5iUWNqY3NyQnhNSGdtdENDWnBma3J6Slda?= =?utf-8?B?ZlhZNTUwYTZlTHRmZzZRZWwxUXBqR0xXZDNvUjNiT0d4ZmRHVEhmaG5oMkRM?= =?utf-8?B?ckZ0NURabUFVMXlRZUY0Wk5lZjhCejlLakwycTkvUjFsQ0lpRGxReFVjZ2Yx?= =?utf-8?B?MmJEazNNMnVjTDJIVjJNS2Zsamp5eUw0WnJQVTJSUjhYZk5kenI4anJmVFRX?= =?utf-8?B?aDZ4ZmpKUG9BdFR0Sk52ZTUycGFjOFNWUjNtOGhUREYzVWtibHpMcHlYZGxk?= =?utf-8?B?QStGbHpPWE1sbEt4N0VXSDJFaFpIQkdCcU9wNThKTzVzWThhdXAxTnoxRVdT?= =?utf-8?B?QjdhSzdKd1c2UmxKWFR1VnZOYnhyK2FRL2lOSUJ0eXovNXBqYTB3UVUrQks4?= =?utf-8?B?ZFR2ZXFvcDN2V2JheWFPaEh1YXNHVDA0em5jU3A5eDY3UGdxdU5VQnVPV3FH?= =?utf-8?B?S0x0QS9UV1ZvcFUwS2M0YmVhZjhWU1ZGUHBDUHd0Tlk5TzQrWEJEaFh1dm9M?= =?utf-8?B?SzVZMzlJaUtqK200TTFvWlpmVzhieWhCNEhEUyt3UXprQlFuZ1JCZXRsM0FG?= =?utf-8?Q?QFvBZFk+tM3MPcqZy0MjleXcKuj7c/pXKWnwl?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: e56772ac-b1d7-425f-77f3-08def4d939aa X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB9079.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Aug 2026 23:11:34.7873 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: UM1z5TKMF6IQuMGA93r8uBMSKHy8WHPOSlLgXUWJ96s9vhiXuuZAi0Mj8QyHAElh9wnOFaN4o2rRFzLZUL81AqW4DEUB3xQ+Pv1VYxQiF20= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR04MB8636 From: Han Xu The QUAD ENABLE (QE) bit is stored in a per-die configuration register on some SPI-NAND devices. When a device contains multiple dies, updating the QE bit only on the currently selected die can leave the remaining dies operating in non-quad mode. =C2=A0 Iterate over all targets and update the QE setting on each die during initialization to ensure consistent quad I/O operation across the entire device. Tested on ISSI IS38SMW04G8B. Fixes: 7529df465248 ("mtd: nand: Add core infrastructure to support SPI NAN= Ds") Signed-off-by: Han Xu --- drivers/mtd/nand/spi/core.c | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/drivers/mtd/nand/spi/core.c b/drivers/mtd/nand/spi/core.c index 35365b67dd8e..744662533f37 100644 --- a/drivers/mtd/nand/spi/core.c +++ b/drivers/mtd/nand/spi/core.c @@ -281,8 +281,26 @@ static int spinand_init_cfg_cache(struct spinand_devic= e *spinand) static int spinand_init_quad_enable(struct spinand_device *spinand, bool enable) { - return spinand_upd_cfg(spinand, CFG_QUAD_ENABLE, - enable ? CFG_QUAD_ENABLE : 0); + struct nand_device *nand =3D spinand_to_nand(spinand); + unsigned int target; + int ret; + + /* + * QE is a per-die setting on some devices. Program each target + * individually when enabling or disabling quad I/O mode. + */ + for (target =3D 0; target < nand->memorg.ntargets; target++) { + ret =3D spinand_select_target(spinand, target); + if (ret) + return ret; + + ret =3D spinand_upd_cfg(spinand, CFG_QUAD_ENABLE, + enable ? CFG_QUAD_ENABLE : 0); + if (ret) + return ret; + } + + return 0; } =20 static int spinand_ecc_enable(struct spinand_device *spinand, --- base-commit: 113f62225e98febabba0fee00afd29d4eaf65abb change-id: 20260807-spinand_qe-dd6148042f63 Best regards, -- =20 Han Xu