From nobody Thu Apr 2 22:25:44 2026 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11012045.outbound.protection.outlook.com [52.101.66.45]) (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 DB5613CB2F2; Thu, 26 Mar 2026 10:38:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.45 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774521497; cv=fail; b=aEZGdUog7dvuoY8sVWG39wnc/mzlPd1LX8ck2Ktxk7pekJiANttsq9bCJJp/WCg2LwctaZ4Gu35usTlgKliXdV0un25vvG/rb25Wp0O+prde6jqV5JLfNi5yPlJjbp8mEqkCjgPbsCBqcxr+CTEkR/ZxHDLVvt8p7rb0YAbeBTk= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774521497; c=relaxed/simple; bh=l9gVAFrKsTiGh2gVsO3if9yB7W3Y//W4j0rAL1Z54pU=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=YsP9Rl08AldbiH/QBsm0Jqdti16pG7pvi6z9XSHyMznTK/PsLzvt/A6V8w9oHt0jjpgj/LiTfqg9xvE0Z6AFjVgitsfcNICTzWXg3CiqrkLi05SFtyOQRbuGQRPyqtJkQKiCrCgdFUBMXQGIb0lme9NcyTNHP4EeQK5rDBe1ZEY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=OjSIOsT7; arc=fail smtp.client-ip=52.101.66.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="OjSIOsT7" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=xXtFi0ZQU8M5fj9swZz8WgDyIRTjGnPZLOLSRldqnu3Us1ShJBuP3MnejwTGyxJmjmIojPoMgDaEtVZSVXG2jM75TBnrTfdjW9FBYnYVTXQzdwluY9xmbto7joSAIRo0iu9GqdyGtYzlivo+t/JzR0QD18P+RO8Qm9oM3ebbTS+uCRKxg319ipAsKtrvvXQa3VaR8ujn0UNLEpLp2FsIurofAkjosCGhFb+aRJqwzOJllPQuPqhQF/5R8NcOovqk+UBOI/J+0F52bcpk7D5HW31gHMF0i+xOanm6t9EAAV8hEesuXblalBYtzGWLYXELdyhyKpGqb+zVl07eU6Meaw== 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=6vQNlC0wAzP3pdZsvAOyrQEPvV2/JRukAzD6ogcE2LM=; b=hYb632PN442ziRnlKOwsNy4d6D93KMdMf0Mew5UEVZht4LPOUDPD4qwZtbMmaYIEnCXrqubxUCSA2Hh6uSll9sPTABfybEaGyp2PhJFx1bAd5zqtvUtrag6HMjTEowj+MU1u5hj8lWPZNVo7udj3/aZYmSmOXx3jDfomVgt0Hs6fHMdPRJDb/28yVbY+RRRVZk4DsDE9EFbhr6kKzdrTv1fuWI+43JajGLcGjfQqPwwhsMQ83+Ba44SGGmz3tI7rK7qSc/BoA359Y+L2EtuD7YXDebjUTWqe66pLROj0+tO+BqgeZy2XaHGCa9Ia5wIahb0r7en1CofL6bLJLHDFtw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6vQNlC0wAzP3pdZsvAOyrQEPvV2/JRukAzD6ogcE2LM=; b=OjSIOsT70nYyII/yaoLFUb25o8lfnAZI8niF41acIoeaqZV7s4r9de3/vBU0IyLF0MaW9GHpcHKstruwS/m2nbGsd71L6xYudoOo2f2zjSOLUYgnjkKtYKGiyNfXvsz0eihDE433ybI7iadu1Q3nbHVU7gv6xv1TWkeiMfcWdTkgZOrZGN32JHJUgQjckV5pp1OQ80QzhMl8upMwBsrqfHBCIVWjKluvHK6lauiCh63gtQJuUUPRVDo8+D2t9p/fLc6bVwNrKdWqiFbRZyTHJ0YLVQTdyC98wgSEMmvMK0gDxRmnPmuZINESkDYLu9MOI2qO/wrVXoLZad3J6DzF4g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AS4PR04MB9386.eurprd04.prod.outlook.com (2603:10a6:20b:4e9::8) by PAXPR04MB9006.eurprd04.prod.outlook.com (2603:10a6:102:20e::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Thu, 26 Mar 2026 10:38:13 +0000 Received: from AS4PR04MB9386.eurprd04.prod.outlook.com ([fe80::1fdb:9c8f:5400:8bdb]) by AS4PR04MB9386.eurprd04.prod.outlook.com ([fe80::1fdb:9c8f:5400:8bdb%4]) with mapi id 15.20.9745.019; Thu, 26 Mar 2026 10:38:13 +0000 From: Joy Zou Date: Thu, 26 Mar 2026 18:39:38 +0800 Subject: [PATCH 1/3] Input: snvs_pwrkey - make use of dev_err_probe() Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260326-pwrkey-cleanup-v1-1-d85d7c0bf275@nxp.com> References: <20260326-pwrkey-cleanup-v1-0-d85d7c0bf275@nxp.com> In-Reply-To: <20260326-pwrkey-cleanup-v1-0-d85d7c0bf275@nxp.com> To: Dmitry Torokhov , Frank Li , Peng Fan , Jacky Bai , Ye Li Cc: imx@lists.linux.dev, linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, Joy Zou X-Mailer: b4 0.14.2 X-ClientProxiedBy: MA0PR01CA0073.INDPRD01.PROD.OUTLOOK.COM (2603:1096:a01:ad::12) To AS4PR04MB9386.eurprd04.prod.outlook.com (2603:10a6:20b:4e9::8) 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: AS4PR04MB9386:EE_|PAXPR04MB9006:EE_ X-MS-Office365-Filtering-Correlation-Id: c8dac9be-331f-4cd7-c6d4-08de8b23c848 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|52116014|376014|19092799006|366016|38350700014|22082099003|56012099003|18002099003; X-Microsoft-Antispam-Message-Info: n9xu5lleo1xiDlW2u5/mnxVUv90PsSZ5SfMFpKVK0Gpyl0q5KHJx2DwOT7ydz+fKQ2S3H+6Z8LT3VM3k0bDshT1FTiKQZhCKNA6BqLxe1SextWJzf9xOaHA105RnJRU9/P2kNRorgC9Rqdw6Um3Uq6QNZ9OubR9X0jkNPr9ogrqg+GQM706hkapi41zXG5acSyXfJJKg2Mksp/kIudN5micAkORcEFFxzsFSmzusDv6iPnto86rMBHc9QEi5PqKbZ3MFeaXqc+iHBmvok7YtWaAL8l5Tpb0ekdvARC/rJr68nTKeWB2NOAaM90xQqDJgRgtOX8aLyXzqyZI/Hwz4zfKSoBhDnXT3170U7IkvkxFaBzp7BzUfGTL+v8pNuCCX0fimHyVII9nK9WFLkN0rKa5nmugbR8n/uXHgVablmZQq9aTX09rJzzaFgCTd7TA0MZH3aaUseJOOw3UuqNrn2wxZTIyzSRQ5HCjTn02Pg5CgRUOGCmxJiQQZMAK0c6xCxVj3+8lteOal+tFxm8t3gikmEyuJIvthDHCBM/DUBLQLDJgN4Z5ovKrEEg3xiFwIu5yisxHGcGdNPpcuobX6BHgdhYUKfNkAQqFlxqJN3T+y9DQY/FIyCEbdvLDQTF8F4t52exXv/vvWQocyFjzU8sEdc7BmC6WgWeu+uMHN9Hin3E1j7R8g3Bzc7gUp1q3yhIvEzueT6K73HrBvv5ZiKyyHstux9gfRKNrgkBsbA5Mwx1na+rmE6Pq7Ygq5SoLPp50HCnMDWPuNTVnflCEgrAgSm9jJMl/0GpxgfUslhTs= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS4PR04MB9386.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(52116014)(376014)(19092799006)(366016)(38350700014)(22082099003)(56012099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Si80cC9BbUUzM3o5TWFzOXNlNUtLWFhhdEJvSXJSYXcrQ1J2dGdEVG9Da3g4?= =?utf-8?B?VXFhejgyT3NjeGhYSGVVQzhsMHpGZVhkSnNyYy9nSm0zZXc2MmV6ZGZxNGRR?= =?utf-8?B?eHJmUXh6Mzl5RzF6MEswa3JoWDZ5OG5Fc3l1YzJyRjFNQ1QxTHcrT1IrZWlu?= =?utf-8?B?ZndmL25ZWXRUVzZ4NGplYmxiVTVVR1MzZVJQU2hMM1RkQ1BnUFQ2ZzBvb09H?= =?utf-8?B?MmJubklMYnQxamRYVnhvTWs1VjlUUHF0R2NCOXVJaGJCYkdMSW15WXBHcFNl?= =?utf-8?B?WkM5MkpBSHFRZHlMdy9nby9mbWxheU15UXBoV1lSbmN5amE0Q2VvMGR5bDFK?= =?utf-8?B?cDlUYzg0d0dqYUhxWnl3aGo5dFBZeGhXSnk4S3pPWXB3dlJ2RllFcXBWc3p1?= =?utf-8?B?K0llcmhsN2cxNnU3Z254aEVBckNkeGlKQzJJaiswUG5LRFBFMmxZaHllaWFa?= =?utf-8?B?NldncjFZVlVWWElGZHpFc1lMSjVURlkzV2NqU3l6RDJaZ2FWNEdVUDZqOGQw?= =?utf-8?B?RHRDUHQ0VFN6NHRqUldPVEhKSEEwRGx5RnJwKzdTMVlDMXlJdTlGUFh5NXRv?= =?utf-8?B?ekhjcUtvTXdldFB6dFI3VmtmeTF0R2pqN2ZwdUVXWnFOVnIrQ0R5R21BL0tZ?= =?utf-8?B?dG9qMTAwNHhqbTREOHVMak16R0NMRDE1YVhtZDlaZnZJYk9UMHBkOXhrMStZ?= =?utf-8?B?UFN2RldVS1E0TVBBT1hiYWZXdVdDU0FuUWxGeStVVlB0aGdRcHBwakVVRHA4?= =?utf-8?B?YWhUOHZWRFBaTmdwNCs0STRjUlNZOXlQSWZmNVNMV2VoREpsNk5rZWJ2RXcr?= =?utf-8?B?VXJjVHZDV3pJbFoyMm01dVJlaVlVMEV6amhzQ21Cc1FNYlZhVVdLSVYwODBG?= =?utf-8?B?TWJQUDhjSlNKWW9rUjNySkFyMHBlQXI2U1VKbDZLSGYycno2eDZrWDZGbzl3?= =?utf-8?B?OG5hOEZUMDZkTkIrTnduMWNYUG4yTy9tTnJZNmNGWENQYTNNQitIOWxBdTZo?= =?utf-8?B?L3dwb2l6UXQwclFxdndMOFZIaTJtdFo4d1JtWlBRc2dmN3dmR0dnUTNISGZL?= =?utf-8?B?cHBtNDFYUitWalJWbytVU2VmSGtHMHZkWDF0aUhmYUtQUTZhV0Z2MU5FVDZ6?= =?utf-8?B?MWVnVnlISzZvNmpGdEtsQVc1TTdSdG1wL3pZZmZNVWpZcEV2dG5kd2xqam5l?= =?utf-8?B?RW5ReXpuTHBvNTlCa2N1b3NlQTZrU3BwRHAyT3VwcmRHNmZKUUc2WStFc2Vn?= =?utf-8?B?VkxnVk43dndFdExhVC9GMUNQSW0zSmpJVkwzTUo2TjlZVVJDa1FUenVFTU53?= =?utf-8?B?QldSbTgvR3JVeW9obExwbWpjbE5Ib1NlZjZUNjdGVDBkdjBTYzQ1TmxWbEt0?= =?utf-8?B?dnYvVGJsRXFUMGhYQ1lNcEFnNVlsTzdXeElweEVkMnhyMDhBUWp1SzRiY1hK?= =?utf-8?B?RjNLY1orN0M5Mk55d09lMGF5SjhtWEpJbnMwZVEyOXczREJyRE05QXhEeHpP?= =?utf-8?B?ZU5UcXBZK2grRlZuUjZEd0RzalZtZ0Q2WFkzanpXM2pnYitkT3RXOCtUVE8z?= =?utf-8?B?TnQwQlNpRWYrTHplR2dITDJTOU4rS0tBNnptelBsVmF5MHh1ZHBLUzJjS0oz?= =?utf-8?B?N0txczlQbmc1NWU1ZTJVTmhnQXJXVVdpOXBKN2FFUkxvQm9EY2J6ZnhTSXhR?= =?utf-8?B?SlU0bnlSd0hlU1pqMC9JbC93eE1jbXVMdFFNVDhKNjZFa2RNQ3Q0c2NVaG9s?= =?utf-8?B?WkozVGZqYkJFMVRJUTAzN3FTVmNlZ3owOVVyNWE2Qzc3WXBFb2loV3M2VzUy?= =?utf-8?B?Uk85R0VUWjByamZ3RXNjd1V4UW5VcDl3eitLRmxGTkhrYTBkK0xUa1M2TDlk?= =?utf-8?B?QVJkU2haMTFmYnJ6dWdCNC9zR3B1N3lhTHdKN3p3bGZkTDBpU0VWak5xeEFn?= =?utf-8?B?WHF1ODAxUS9md1hPdThDYy9vSjZOZEJmTmFHdklFeWFwRlN1enlvTXQxQS82?= =?utf-8?B?OTJSd1JTZk1panB6UUpVaDEwREUxRDlPbDRQc1gwVWRrbXAwbUROdHhYMWZY?= =?utf-8?B?UkRtSzVtWnBsSnlwMDZsbVJud1hVZyswYjVLc1hCdFJYa2M2ZTFaSnlLZUpV?= =?utf-8?B?QzlhZEdnczRUOTRDUndkYWEydmtoMHhURFdHNno2SFRWcUFGSjVpTi9QZkhJ?= =?utf-8?B?UE4rNnBKbGcyQndwRzRndUdDMUEzOG9SNVNUWXh5TWRnb3R0SEhjNUx1YU5m?= =?utf-8?B?Vk1pWlVtRWRtVmg5MUZEMHA1MmpjSk96U3cxcmxOcm9mekpxT0RvSmtDK0g4?= =?utf-8?Q?S6YpXs2kXWsJevZTae?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: c8dac9be-331f-4cd7-c6d4-08de8b23c848 X-MS-Exchange-CrossTenant-AuthSource: AS4PR04MB9386.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2026 10:38:13.4438 (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: 5DacxZH2rpDJtLIMY0jki61+RtzN0t9cOT95ok7b1StsnyEt//m42qMXsCyMZZY6 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9006 Add dev_err_probe() at return path of probe() to support users to identify issues easier. Signed-off-by: Joy Zou Reviewed-by: Frank Li --- drivers/input/keyboard/snvs_pwrkey.c | 40 ++++++++++++++------------------= ---- 1 file changed, 15 insertions(+), 25 deletions(-) diff --git a/drivers/input/keyboard/snvs_pwrkey.c b/drivers/input/keyboard/= snvs_pwrkey.c index 954055aaf6e29527f22f8129fd47ca17722e2bc9..836ab94c160615f4b0f645d9b9f= 85d54638c2624 100644 --- a/drivers/input/keyboard/snvs_pwrkey.c +++ b/drivers/input/keyboard/snvs_pwrkey.c @@ -124,17 +124,15 @@ static int imx_snvs_pwrkey_probe(struct platform_devi= ce *pdev) /* Get SNVS register Page */ np =3D pdev->dev.of_node; if (!np) - return -ENODEV; + return dev_err_probe(&pdev->dev, -ENODEV, "Device tree node not found\n"= ); =20 pdata =3D devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL); if (!pdata) return -ENOMEM; =20 pdata->snvs =3D syscon_regmap_lookup_by_phandle(np, "regmap"); - if (IS_ERR(pdata->snvs)) { - dev_err(&pdev->dev, "Can't get snvs syscon\n"); - return PTR_ERR(pdata->snvs); - } + if (IS_ERR(pdata->snvs)) + return dev_err_probe(&pdev->dev, PTR_ERR(pdata->snvs), "Can't get snvs s= yscon\n"); =20 if (of_property_read_u32(np, "linux,keycode", &pdata->keycode)) { pdata->keycode =3D KEY_POWER; @@ -142,16 +140,15 @@ static int imx_snvs_pwrkey_probe(struct platform_devi= ce *pdev) } =20 clk =3D devm_clk_get_optional_enabled(&pdev->dev, NULL); - if (IS_ERR(clk)) { - dev_err(&pdev->dev, "Failed to get snvs clock (%pe)\n", clk); - return PTR_ERR(clk); - } + if (IS_ERR(clk)) + return dev_err_probe(&pdev->dev, PTR_ERR(clk), + "Failed to get snvs clock (%pe)\n", clk); =20 pdata->wakeup =3D of_property_read_bool(np, "wakeup-source"); =20 pdata->irq =3D platform_get_irq(pdev, 0); if (pdata->irq < 0) - return -EINVAL; + return dev_err_probe(&pdev->dev, -EINVAL, "Failed to get interrupt\n"); =20 error =3D of_property_read_u32(np, "power-off-time-sec", &val); if (!error) { @@ -165,9 +162,8 @@ static int imx_snvs_pwrkey_probe(struct platform_device= *pdev) bpt =3D (val / 5) - 1; break; default: - dev_err(&pdev->dev, - "power-off-time-sec %d out of range\n", val); - return -EINVAL; + return dev_err_probe(&pdev->dev, -EINVAL, + "power-off-time-sec %d out of range\n", val); } =20 regmap_update_bits(pdata->snvs, SNVS_LPCR_REG, SNVS_LPCR_BPT_MASK, @@ -198,10 +194,8 @@ static int imx_snvs_pwrkey_probe(struct platform_devic= e *pdev) =20 /* input customer action to cancel release timer */ error =3D devm_add_action(&pdev->dev, imx_snvs_pwrkey_act, pdata); - if (error) { - dev_err(&pdev->dev, "failed to register remove action\n"); - return error; - } + if (error) + return dev_err_probe(&pdev->dev, error, "failed to register remove actio= n\n"); =20 pdata->input =3D input; platform_set_drvdata(pdev, pdata); @@ -209,16 +203,12 @@ static int imx_snvs_pwrkey_probe(struct platform_devi= ce *pdev) error =3D devm_request_irq(&pdev->dev, pdata->irq, imx_snvs_pwrkey_interrupt, 0, pdev->name, pdev); - if (error) { - dev_err(&pdev->dev, "interrupt not available.\n"); - return error; - } + if (error) + return dev_err_probe(&pdev->dev, error, "interrupt not available.\n"); =20 error =3D input_register_device(input); - if (error < 0) { - dev_err(&pdev->dev, "failed to register input device\n"); - return error; - } + if (error < 0) + return dev_err_probe(&pdev->dev, error, "failed to register input device= \n"); =20 device_init_wakeup(&pdev->dev, pdata->wakeup); error =3D dev_pm_set_wake_irq(&pdev->dev, pdata->irq); --=20 2.37.1 From nobody Thu Apr 2 22:25:44 2026 Received: from AS8PR04CU009.outbound.protection.outlook.com (mail-westeuropeazon11011063.outbound.protection.outlook.com [52.101.70.63]) (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 2FE9C3CAE88; Thu, 26 Mar 2026 10:38:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.70.63 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774521501; cv=fail; b=O7pVbSCVRTSQ1Zy2wfcEZ5krBNdFeeVmoXUIPXpL8t4szSCnFfP4THl/DGNXWJ1oq/O5KQJR+nbj6+V5HV6bk6kPsYWdwfIh8B03RB2gktCuqBYt40SVs0XJIW2DOZcpK22PcqBqSYqiqPme5HAsdU6dpFRQc7wO9ClHAWzW+YI= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774521501; c=relaxed/simple; bh=Lg34Loc2IzMBgmcRsR3x66hbgXZjdoUeKEYFZ12h848=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=L5r9Rsftu7QXmZPUk9XJpp44AaUetHdxUOcD9O59tnKzXkP2RASZO9a4PvI9jh5gigBLEJzRktacy5xVmZsh4yIm7LYoWqmUA5pq7Idvcf9ID+nGysd0W7P2gdx6oZLtpDXAY0tWdYe76qr0Okv1gA/AhIINC1o3ZPh9L40f9q4= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=L+2uLz/4; arc=fail smtp.client-ip=52.101.70.63 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="L+2uLz/4" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Q9EA9ekweW2QqhFDc0ZVOBmsIuntmUS/WLVm7OFo8L/ExX6swG7Gc/XVVo2fy4auN/mCW9l3LQtao8+xJFBSKxBloShn1EStSU1g7Wd83hr57F88QvBS6QBHC30NOH/OFOCJpF431uOogEWP1MrQNalnVsm/QHUyCUANSM7cFI4i+17ibDjrZy/C8pS+rZyNc6K53kxv4HAXCFDRU4l0TF4KL1MwIhQjP/uK50or6lajomamPdM/Y8hYEV8lyALZE/1y5tpKGQGxKgTjZ06JzHYgZX7clKyHrck0/BypQmByKoDnWRq4SWSXFtV6N1400OrpEhYXgx5Kb6Vl1wpX8A== 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=0wMaDFltvv8oDCq+hkda4xRbFD+YWCdXW80TqnKfKWY=; b=kYDu8GrWRrVj8bnRdKJVmejLVn214mdDfGV6WalQwC92Mq0VQTKJuJdKZSedFpFXUcAeL+lrWPCQVYpsbo7fMPkqOShB0d4nyg5V6o7prrCgG+ukOyCyc7If0zNN9EYdmvF7+sEIE7y3lE/2PHXvO0UPmht0S5uCVQvLgec68/tB9nrqNMQ09zwpKNY3lUxsg+C3O6FxIXLhMhUWdYSjA2qHd8PNwPqNQ9UcTjw4n9YM8Qb9MIqxmTMGeXS9GXFrj72EGUk0pilc7BNxMcvVbvzqRXX1kz8WmLKzGb2t1mnIUXTOxpjrs6NDx5Tc3ADlv4lzluyhXAjJt5UfPaErtQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0wMaDFltvv8oDCq+hkda4xRbFD+YWCdXW80TqnKfKWY=; b=L+2uLz/4rlKfb/fI2vAMi2mdMWu9QYTKSempAs5mlzX/hLjiVTynDG50Aa1VQA1swiasdtakTjyEJS4oMSAVxPkZeSSkH5vG6Ey+FJ/SrFHbdztDVcIficPk7hucYO5afBP6DiSU3btLo4XtGLu4Y5fMlRVybj1Vj/D5ibHhFVi168ghVxtnJcamQuy4RCm4SOqxb5zAjvQkoJwNhXpyZH78ORoc+PbsKuHCACHFeN2MY+GggkCiWspo/JfTsQfUuTttssItdLXSLW0TBrW5pLiHRXT3hmX8I4kAze8+lU6vZ5y69XcmKSpY/0NbvgvTRE/qyAJqIBqq9im3+Te8Wg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AS4PR04MB9386.eurprd04.prod.outlook.com (2603:10a6:20b:4e9::8) by PAXPR04MB9006.eurprd04.prod.outlook.com (2603:10a6:102:20e::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Thu, 26 Mar 2026 10:38:17 +0000 Received: from AS4PR04MB9386.eurprd04.prod.outlook.com ([fe80::1fdb:9c8f:5400:8bdb]) by AS4PR04MB9386.eurprd04.prod.outlook.com ([fe80::1fdb:9c8f:5400:8bdb%4]) with mapi id 15.20.9745.019; Thu, 26 Mar 2026 10:38:17 +0000 From: Joy Zou Date: Thu, 26 Mar 2026 18:39:39 +0800 Subject: [PATCH 2/3] Input: snvs_pwrkey - use local device pointer avoid reference platform_device pointer every time Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260326-pwrkey-cleanup-v1-2-d85d7c0bf275@nxp.com> References: <20260326-pwrkey-cleanup-v1-0-d85d7c0bf275@nxp.com> In-Reply-To: <20260326-pwrkey-cleanup-v1-0-d85d7c0bf275@nxp.com> To: Dmitry Torokhov , Frank Li , Peng Fan , Jacky Bai , Ye Li Cc: imx@lists.linux.dev, linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, Joy Zou X-Mailer: b4 0.14.2 X-ClientProxiedBy: MA0PR01CA0073.INDPRD01.PROD.OUTLOOK.COM (2603:1096:a01:ad::12) To AS4PR04MB9386.eurprd04.prod.outlook.com (2603:10a6:20b:4e9::8) 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: AS4PR04MB9386:EE_|PAXPR04MB9006:EE_ X-MS-Office365-Filtering-Correlation-Id: 7cb113d1-1535-4aea-9476-08de8b23ca75 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|52116014|376014|19092799006|366016|38350700014|22082099003|56012099003|18002099003; X-Microsoft-Antispam-Message-Info: f6WYiS9DBvLvQ8V9vO6HQp+cug+PYDBun5aMkKCQSpMmI1eqfN6/jd6ccgyyY2QqEdxyhidVQDRxNb0NcEOxK4f9oATSbXJ/MZhVY6mst9ce6TXQHdE4H0COKcGS6MH+a0Lxq7xVwtwdOi46QjlG33Q3tv7R/IgODTSmDu4FRZ01BZVihLS0TyaRBzo6cwj4VrN/b8VFfFwSJ90HTPjUP5j5fOz1o0llo/3IOKT++wA+mm1PQJ6mgicFKy8Ra2qeXUHfFz180m+M1UayUX8S+zlLOayPfNijG3t0kiC2ejjLCcyGKZqGwOYUNgEaZV+xjz+rPSK/WJysuYTbhMl7PNfkIzii54gsPmqalMECW8dcDrYpqTDxNGhFljhrZpNTCH2SqDqNpPV4RQWXTD/i/gh2PkbooMIoMCh84hJDakkBiaymI7zVse/n1zPRN3Kk6XX5/+OCylsWgQaEqquOjY6RWlMpkorSA2z1Ntbjojtc/Ns7miDJyq8kqQJ6aT5irOknlDW/AnpuwU3gF6IaEVZOIs3CLmi4lUyFpYw+eGGTy40NeYa5toIBBwEOtSfPrPEjCOMq3Rl/KozPuJkGWaGe0ISqakfYuURdR2tvt2Vsl8OKn8WB9IGGLOUycaB4q7DgQ69CxGJIUhv4BaiIaOdsdXiy2fYTQynxxmzWa6ZLuUlKa0T8tYOBHihwwCgl3mdSIux++COvfuaJY+41lXdKom/d992b3yn8rS644lIMpSU8T/oq0Xve4C9u42ogADAOoyvLLMHTleN1AjwZBofTIQbVO0owUrv1xN1F8yc= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS4PR04MB9386.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(52116014)(376014)(19092799006)(366016)(38350700014)(22082099003)(56012099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?M08vSzI3SjVWK2kyUURjMFRXeHlTZW1CTkk5VEdNMEl1Rmw2aGZHdnl4OFE1?= =?utf-8?B?NkZITHVXQXhEdEN5YVp0eUoxS1Y5UE51ZGpFNVVQNTZHZVFGTkFqUmhub0lj?= =?utf-8?B?ay82ZDBFSjdLUXdlVW4xZitDekJIU09tVU1oeFdIUXFEOVJLeEtPbUhoanR4?= =?utf-8?B?bWNJdzE4d3JKbWZOMWZkOFg5bnRxTWF5Nno4SnhRQWRGZnRicEE4UHhhUUY4?= =?utf-8?B?aFVXcnloeWhQbHp0MWxKajlobGZMNGw5L2M1eWZQYWJPcm5DcWhmVDlhZ3pa?= =?utf-8?B?dUxlMFBRNkJyL0JjaHM0ZkVkci9yQ3BrSjdQZEE3WWx5ZENzTUJzdjFKUEJ6?= =?utf-8?B?dVBnQm8zM2xkYjBNMXYwQXNRZkVQeUJOOXBGMWxVRnRIQngrUHc1cmtUV1VE?= =?utf-8?B?TkM4Y3FmQTlwSjJJcDFVQUZsL3Rad09SanMvaFR2VU5MSURIWUFhSC9LdUEx?= =?utf-8?B?ampCSDRhajRhWDhXYk1sWG9FbHZ3Zkhkd0lnRll2cFFHZW9vVW92U2JBL0ZZ?= =?utf-8?B?S1RRNGRnL24vaGl1L0tXRkZYb2JwOXhYRndhLy9DUFNCYWFIS0s2SmhYZ0Zp?= =?utf-8?B?UjA1VHpCWlprVWh6UHFtQ292N1NZR3lPWnpqV1dkT1FkQVp5UG9KQUt3QlJK?= =?utf-8?B?czR1SlRmdEovU2VxcWZQRWkyNnN4UFhKbDdXWWRSdnlFK3BpTytiS1RZRXk2?= =?utf-8?B?aVk1YmxrOW5JRk1Xb2NDeTZPK2ozRE90MnFNYncybEI2bVZVRktOeGtKTzNK?= =?utf-8?B?MjdJZlVjbTB1amRXL3dUNTk0akl5Tmlmb0tqVzA1Mk1TVmhqN2VFcEdEeWxs?= =?utf-8?B?a3hpamRmZHd1QjNCUDAyc3Zud0I3akE2ZzV4NFRWN0w2bnJBdDVrNTJlZEgx?= =?utf-8?B?RGRTaVJSSTR1NFRSQVdIQ0crK2hQaTVMRWpqUFlhZTFBT3A0RnByUG1KSE9X?= =?utf-8?B?S3RQTVRZdlQyTy9ZWm9INklpM2xPb2ZONDFZNW1hdHlrRVRqQ2JKb1B6RkY1?= =?utf-8?B?Z3I2UEtSWWIycGM5WW05cDFteVBsd3VmZDN4Y0lVUElRanMrUXhzS1dOUnhX?= =?utf-8?B?K2krcld0ZDQrRVZvS05QQnVpbWF3Nm9WWS8yUzliRVJOVEZldWFSNUsvdVhy?= =?utf-8?B?Y25IRGtHZjhVZ0JkZCs3WXRGYXFnMFpidlRKQ1J5V2lseU5adjdCd1dyYzhx?= =?utf-8?B?OVJkRGprV3pJWTZ1UHhxMStwck5SUkJ1cXdma3VYTGpsNWV0cXlGamZZaU1j?= =?utf-8?B?amZFbzdtL3NQSmFjNVc3SnFrL29XYWxpR29vRW9uWEM5d2doK0VqR21zL2pN?= =?utf-8?B?UHVDV0pBZ3JKcFJhOGRKQ3pGaFFHUFZBWFJ4L3kxMC9CTmE1M2EzV3JzTzh6?= =?utf-8?B?S2Q2c0krWHRraXBZQlVFdXl0RzZoZTdPMjdJWDlzcnNrUm40cFREV2UvYUFq?= =?utf-8?B?NTcxcGYxRlF0VHZrMngyTGpvVk5DU2ZJcTFwSi9QeXovZnZLU3ZTSnJoOW44?= =?utf-8?B?S0lDQ1NHbnFYZzJNM3Q1dkY4dFpGZzl3UDh0d2RzMU52RVkwelJycjhzWW05?= =?utf-8?B?QkQrblF0RFgxQ0J3eHdLeDJSTi8wSlA4Ymtjd2paRWpsbVNNbWVybHgyQU9B?= =?utf-8?B?YS9pUldjUDVuUHpQdVl6QUxkTzdLQ1FrbWlpNUV0eFJtVU5qdUFIbm1wVVJN?= =?utf-8?B?ME1iVmw4ZlMyVUN1bXhEZStPWS9HVS9VS0NibXlldHErYUIzWWV6am1ibC9j?= =?utf-8?B?S0FlOTNLdkowRGxBcnR5MXMyM21KRjB4bytienJJK2RCWnhHNjJlNFlndTFw?= =?utf-8?B?K0tFZ0RJRzROYXhZd2dIczhZS0duaThPUzZwcXdiWnZWYktmOGpHTzhkOUFy?= =?utf-8?B?cWdRaDFtbXEzdzNQZGcvWFQyTnYybERTLzBoODBjbXFiSEp2SGd5aU04bWVa?= =?utf-8?B?RTRETGFzU0tiSlozRGROYUJKbEFGZ2plUDkvb3dtWXhKZVlmaEdoRTdYVFVV?= =?utf-8?B?Vlh2NjFkd0xjajVuNXlNK2NWYlhvZFgwNi9UMTg2czBMVUFJLzd1KzRaS054?= =?utf-8?B?TkZUYTIvTWdYVkwyWGRHMHIwaCs3dzI4Y3FPR2VSUGZvL3phNzFoV2piYzJz?= =?utf-8?B?eStPZjdaaVd0enJJT2FUdm9Ja05EMTAveU1VOUExZ2hjWmQ2bmpHamV1elQ4?= =?utf-8?B?dFZoL0dQbCtPck9ycVRuMkFMa3hkMjI3aFN5bnVCNWJxRkp4Slg1MmlJUGRv?= =?utf-8?B?L2JuZWZ2L1ZvbmFDWXlBRHl6N05tYlc1b1gxaXplLzU5SGlmNXBzTVhCMy9D?= =?utf-8?Q?TlIWbr+omDzJltd/zL?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7cb113d1-1535-4aea-9476-08de8b23ca75 X-MS-Exchange-CrossTenant-AuthSource: AS4PR04MB9386.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2026 10:38:17.0876 (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: i/hyDWsDal/KEjh9McEuNFCM/t1ZeXldtNamSmOV/NXIb3npiplebA0klMY7qR5D X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9006 Make use of local struct device pointer to not dereference the platform_device pointer every time. Signed-off-by: Joy Zou --- drivers/input/keyboard/snvs_pwrkey.c | 41 ++++++++++++++++++--------------= ---- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/drivers/input/keyboard/snvs_pwrkey.c b/drivers/input/keyboard/= snvs_pwrkey.c index 836ab94c160615f4b0f645d9b9f85d54638c2624..bab3ab57fdac77256be75a08077= 3ea99372ec9c7 100644 --- a/drivers/input/keyboard/snvs_pwrkey.c +++ b/drivers/input/keyboard/snvs_pwrkey.c @@ -112,6 +112,7 @@ static void imx_snvs_pwrkey_act(void *pdata) =20 static int imx_snvs_pwrkey_probe(struct platform_device *pdev) { + struct device *dev =3D &pdev->dev; struct pwrkey_drv_data *pdata; struct input_dev *input; struct device_node *np; @@ -122,33 +123,33 @@ static int imx_snvs_pwrkey_probe(struct platform_devi= ce *pdev) u32 vid; =20 /* Get SNVS register Page */ - np =3D pdev->dev.of_node; + np =3D dev->of_node; if (!np) - return dev_err_probe(&pdev->dev, -ENODEV, "Device tree node not found\n"= ); + return dev_err_probe(dev, -ENODEV, "Device tree node not found\n"); =20 - pdata =3D devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL); + pdata =3D devm_kzalloc(dev, sizeof(*pdata), GFP_KERNEL); if (!pdata) return -ENOMEM; =20 pdata->snvs =3D syscon_regmap_lookup_by_phandle(np, "regmap"); if (IS_ERR(pdata->snvs)) - return dev_err_probe(&pdev->dev, PTR_ERR(pdata->snvs), "Can't get snvs s= yscon\n"); + return dev_err_probe(dev, PTR_ERR(pdata->snvs), "Can't get snvs syscon\n= "); =20 if (of_property_read_u32(np, "linux,keycode", &pdata->keycode)) { pdata->keycode =3D KEY_POWER; - dev_warn(&pdev->dev, "KEY_POWER without setting in dts\n"); + dev_warn(dev, "KEY_POWER without setting in dts\n"); } =20 - clk =3D devm_clk_get_optional_enabled(&pdev->dev, NULL); + clk =3D devm_clk_get_optional_enabled(dev, NULL); if (IS_ERR(clk)) - return dev_err_probe(&pdev->dev, PTR_ERR(clk), + return dev_err_probe(dev, PTR_ERR(clk), "Failed to get snvs clock (%pe)\n", clk); =20 pdata->wakeup =3D of_property_read_bool(np, "wakeup-source"); =20 pdata->irq =3D platform_get_irq(pdev, 0); if (pdata->irq < 0) - return dev_err_probe(&pdev->dev, -EINVAL, "Failed to get interrupt\n"); + return dev_err_probe(dev, -EINVAL, "Failed to get interrupt\n"); =20 error =3D of_property_read_u32(np, "power-off-time-sec", &val); if (!error) { @@ -162,7 +163,7 @@ static int imx_snvs_pwrkey_probe(struct platform_device= *pdev) bpt =3D (val / 5) - 1; break; default: - return dev_err_probe(&pdev->dev, -EINVAL, + return dev_err_probe(dev, -EINVAL, "power-off-time-sec %d out of range\n", val); } =20 @@ -182,7 +183,7 @@ static int imx_snvs_pwrkey_probe(struct platform_device= *pdev) =20 input =3D devm_input_allocate_device(&pdev->dev); if (!input) { - dev_err(&pdev->dev, "failed to allocate the input device\n"); + dev_err(dev, "failed to allocate the input device\n"); return -ENOMEM; } =20 @@ -193,27 +194,27 @@ static int imx_snvs_pwrkey_probe(struct platform_devi= ce *pdev) input_set_capability(input, EV_KEY, pdata->keycode); =20 /* input customer action to cancel release timer */ - error =3D devm_add_action(&pdev->dev, imx_snvs_pwrkey_act, pdata); + error =3D devm_add_action(dev, imx_snvs_pwrkey_act, pdata); if (error) - return dev_err_probe(&pdev->dev, error, "failed to register remove actio= n\n"); + return dev_err_probe(dev, error, "failed to register remove action\n"); =20 pdata->input =3D input; platform_set_drvdata(pdev, pdata); =20 - error =3D devm_request_irq(&pdev->dev, pdata->irq, - imx_snvs_pwrkey_interrupt, - 0, pdev->name, pdev); + error =3D devm_request_irq(dev, pdata->irq, + imx_snvs_pwrkey_interrupt, + 0, pdev->name, pdev); if (error) - return dev_err_probe(&pdev->dev, error, "interrupt not available.\n"); + return dev_err_probe(dev, error, "interrupt not available.\n"); =20 error =3D input_register_device(input); if (error < 0) - return dev_err_probe(&pdev->dev, error, "failed to register input device= \n"); + return dev_err_probe(dev, error, "failed to register input device\n"); =20 - device_init_wakeup(&pdev->dev, pdata->wakeup); - error =3D dev_pm_set_wake_irq(&pdev->dev, pdata->irq); + device_init_wakeup(dev, pdata->wakeup); + error =3D dev_pm_set_wake_irq(dev, pdata->irq); if (error) - dev_err(&pdev->dev, "irq wake enable failed.\n"); + dev_err(dev, "irq wake enable failed.\n"); =20 return 0; } --=20 2.37.1 From nobody Thu Apr 2 22:25:44 2026 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11012055.outbound.protection.outlook.com [52.101.66.55]) (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 30ABD3CB2D4; Thu, 26 Mar 2026 10:38:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.55 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774521504; cv=fail; b=rP6Z7ZaLfa5bcUaL5+zezNUXkf3VlEyVM6d0kXDKFzB2AQL1zkazMf2XRKZyTXaWM6oh8XM9h47kvh5EYeqppoQJGe4MgbVbAq3rG/P8Nr1eCFtUfVMpeakPLSgdaEG533NMoil33RhyZE+1xEZfjVh0Zg6/JzoIwNptiBejTII= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774521504; c=relaxed/simple; bh=/2/BO45Jja4fcC085rLdKcjKpiEWhLQ4uUt+3HA19g4=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=nsJUiZUkYml3Z1wmSd+zNPFwdAyt8cG9Q1U7yeHYumYxJQQ4bHsHApv+soRQCInFndyNl8cYK6OD71Q486RKVjCe7++rGYuo/Wmx7MPTmEx48jTKL8MWUlTjSCpfM2Tx6nYDkdahicHfPKMWejuHcd07RbNg0VQSODG+OJ8etfw= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=K5SoM5hE; arc=fail smtp.client-ip=52.101.66.55 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="K5SoM5hE" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=nz+OZN8CRghIc1QloiQ/OOgemZ4j7c3khLqf8BlCu1REVN5gP8g3Ug3q/sdOMVJmcfZheR9M0S37uT7b3Px7wwUYbhhqDIP//e1mGscid+uHn2zlznp2ENjJY9ikh9rbB8qZT/kIK/K8VnnabmM9cbIy9+BcefLpB2Wc3267yTv4XUK54mpoUAHl0p2YWJcizmzvCTkRFG/NIzK/BdEgVj5HGz020k6/4blKWxDj5dTxCaxXh9wbdUIoE9nxJ0uWo/SLgN2ppMOrhnMJGTXN9BasEQ9CbsyKpsB1K/Hdzoza/0o5HFSpUdY1wfLwJ8EGJQvOq6HTicpOdnJd+1CulA== 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=470TGF1THXUR8+txISwEJDWq/GamtjNHEH4q/KT7paE=; b=k7f0+gYAepf3jdsg4WF6zJ9mI1Y2TUIzB+BY+2nOyqYxiAcg2LxbriOJ3S7NaOcv33qPTSZm7vlY3TeK7qQLQdu+fKrplBwDDd4C/Yke+Eaw9A8n9TUJxHBxPE6J2oH67X1V1rziHjggo4+48J9a9VPr8BR8f8xswDG4wsacnf5+PxlPaQlDeKau+b4HPtQzpjx+8k+swrmK42ddd4lwJ4r8i8/qcFDsPKPLfOtX0eFsdf89xNCFr8WaSto0vs6UXBIKBvuvSf6Slt3Metx6W98s79MSjF6N0nqmAVjeIlMjcHjmg173yFyuvbdZ/Yufh8uiBbKIFFczWZNDQR2g7A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=470TGF1THXUR8+txISwEJDWq/GamtjNHEH4q/KT7paE=; b=K5SoM5hErUUVfNNMhYbJhJzXDGBYQMofl0lmETKJT41laP5bEEGgddYQIwFn6RXpD5UmN9S3mZ9FwE7SGSEwvk3ZjLB+uIuk+6zK731lhdzv6E4Qm5y5jLD3fg2deNorNwgymekH/yMxBmQPWmR94OANysKAKdSX+TswFwQ57zPtPdWmUsDtWc12GoE57FoBYshbNxYbOIfhAePTS7aOHxwN7XaiCZPId+FeK+4xnGjw0+i3kN04CluXctiDCALljRUgqdSDSVd8XrXlYgb48X3RfIyKsOViZhOFZw+aurbPHxgvNkREzpfWDuAIYEnCE4H7EMeWODC2nmFfvYogbQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AS4PR04MB9386.eurprd04.prod.outlook.com (2603:10a6:20b:4e9::8) by AS8PR04MB7765.eurprd04.prod.outlook.com (2603:10a6:20b:2ae::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Thu, 26 Mar 2026 10:38:20 +0000 Received: from AS4PR04MB9386.eurprd04.prod.outlook.com ([fe80::1fdb:9c8f:5400:8bdb]) by AS4PR04MB9386.eurprd04.prod.outlook.com ([fe80::1fdb:9c8f:5400:8bdb%4]) with mapi id 15.20.9745.019; Thu, 26 Mar 2026 10:38:20 +0000 From: Joy Zou Date: Thu, 26 Mar 2026 18:39:40 +0800 Subject: [PATCH 3/3] Input: snvs_pwrkey - report press event in interrupt handler Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260326-pwrkey-cleanup-v1-3-d85d7c0bf275@nxp.com> References: <20260326-pwrkey-cleanup-v1-0-d85d7c0bf275@nxp.com> In-Reply-To: <20260326-pwrkey-cleanup-v1-0-d85d7c0bf275@nxp.com> To: Dmitry Torokhov , Frank Li , Peng Fan , Jacky Bai , Ye Li Cc: imx@lists.linux.dev, linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, Joy Zou X-Mailer: b4 0.14.2 X-ClientProxiedBy: MA0PR01CA0073.INDPRD01.PROD.OUTLOOK.COM (2603:1096:a01:ad::12) To AS4PR04MB9386.eurprd04.prod.outlook.com (2603:10a6:20b:4e9::8) 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: AS4PR04MB9386:EE_|AS8PR04MB7765:EE_ X-MS-Office365-Filtering-Correlation-Id: 3bf22082-abd2-4a27-fdff-08de8b23cc9e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|52116014|366016|19092799006|22082099003|18002099003|56012099003|38350700014; X-Microsoft-Antispam-Message-Info: aBjc9JdphpwM8S8X4M4bUkNNhsOG2EZHcVD6LwbyetlsnjuMAabzwb6RVkTQ2FhLQJxKUgiUG8ZVaORtooLzTN5KZ+6o0uYYHXtLD/rkijYKlx7f7FlnJ1fapBvn5GTEQbCdOkf0N5BZsim+BrFVvT4oCn9ktMqO2LaYNafF5NufYxRKMibKpjLxoZn6rhbVnl7GiF7bI0HSWDtkoPS1Oi0U75PjIQhbEM+X1QVJqobr4Hv2UPcHWXtDSQsn826ziD6theE9sNuU1sVHfAAXXJwhZdTS6seh1IgC5ycWelNk9Wf8IJpxS7m2i8jQ1gagkNPzZCOO74j+MZ+Nhym4HDjgjRrsDk92o9tackT/Wp6NUT3WZuKsvuK7K62Z9par+IHedpVxUQv03AXHKVdgETab2J/jdu8LktBEV3++qPwHln3wVBDXM/3ql+oCZ1g86S1H8LfnGK15VBEKzUgVoWsqEmmYCBRsVqXz8pcRo6zlwIQq1Oo1HGsKeCYk2EcGXdHmcsE//GrEHpz8PIfHcxMv3/B2PKpLpmmO1kyU+A50rdGuL0RE4bd8y+QMIfk3hdwD/+HMSUQ1KpFMpqYD9Qn4x8jrQRjLjAhZU03hIqjL3RooJiNMhhPLs4Tbhh3YkPiHqR5LTo1W6Q0iwvCm7bJ0be3+URARBh62J0RKn0hIYnsFDUpS/tCPFz60RhSqdsfsB/hrVY8KnCRVUAhgq3Kyr2tRqzINgnF2pC//za02Pv1lL83Krp0sWXl1hTKR7CUx6zjTDf1ZyKHXDkumuj7iDibfxWe1Xpw2/AgFaq8= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS4PR04MB9386.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(52116014)(366016)(19092799006)(22082099003)(18002099003)(56012099003)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?c0Z2ZERrU0RHVXZ0aFUrcytkQUhRcEx4eE1mWFJqRVVuMEhtL2JQWWJvMlpk?= =?utf-8?B?V2R5M1ZhVS9TanVRSGQvY2JmYnc0a1VvMEt2MnJyWFl5eTc3ZjhYVE5mYi9E?= =?utf-8?B?RjZiZTVVM0NQdXpURVFaeDFYNzZaejlxSnJ1TFh5WHpUVUlvOVVBT0lhQXlw?= =?utf-8?B?REhqbkkrdUNRL0xsSmhmenptUTJ3eFF1NFZ3eHhnT3RUTE9Nby9LM1BValp6?= =?utf-8?B?c3dDdThPSExnZXIzS1M0QXc3VVZGd1VuUHIwbkZFcWJRUUZxNDVaYVNHTHUr?= =?utf-8?B?T2JGL2tLVzlNUnUweWh1dTZrMnYrcDJZVjRyL3c4QU1JelJKeFJwZXc5L0Fm?= =?utf-8?B?L1lUcGwxNFhhUk9ZbzlTZ1ROdnlXdUw1M3dmajR1b3hxaEJIYm41NVNNYkhm?= =?utf-8?B?blovakRYRmxkd3NkbGRTa016UjJXbDIyVStUa0dRVDVkSGlKZVhra2l5Z09v?= =?utf-8?B?ZllnQkk3TTBnZnR2NW1MNFc3M1F0YS9Fc2xIY3lMSTBVTGV5R1dBWTJaV29h?= =?utf-8?B?WEpJbnRIYzA1RGtZTTZSVmNXVnEvT3JhVGJmc3RSNmdody9nblQ3eHRuUXd5?= =?utf-8?B?cnhyUWM5bWExMWdDcDM2cVoyWjJjMW1WNnF3RGJ1cnJPc2ozYU9aZlpxVGEw?= =?utf-8?B?RDFPLzRrYjh1YUZWQ1NDMk9KVE9yOWhpRTcwckIwR0R3OEVTdkgvZ2tmWHBD?= =?utf-8?B?bWFpemtZZWNHYkVJUHpzMGMxZ0tFckk4SXZVb3A0N3FDbDZpaTFjMVlBR3hr?= =?utf-8?B?dlNOZWcyVkVuK29xRS95NEJKNzVvWWtpRFl4cFptdjZNUVVwZndxTW1oaVRM?= =?utf-8?B?S2RTbS90VzlkNkhwa1VzN1VZSWt4QmozS2ZNaTQyOENTUzJ3TktZa1pXTkt2?= =?utf-8?B?Yk80SE8ranBXL05iOUxib1djK3B1ZlJIMlNEYytYNTVkWVpybzF4cWZZSHdG?= =?utf-8?B?MDdsV29na2lpTGIrYlpkcFlJWUE3MTZ4YjQ2ZFRJMlMvankyaDVJcW42QVRm?= =?utf-8?B?aTl4QURadGhTaFprcklrQ3YxbFJMRkNrd0E2ODNtMVBwUklnY3NrMjQyY0Vm?= =?utf-8?B?RXhwZnQ4SzVlK1lHWVdWdlhnZGJ1djZPelVpZExRYWZwb2pLZkZYZjQvRFZY?= =?utf-8?B?dUx0RWNCUCsxdlFUWjJyU0VIZFhRRWFXZm85TWUyQXJNTzl3a0IwR25SU1NY?= =?utf-8?B?bldtM281S2VjeFphYUJ2UWZQZEZPclowVmZ0OEFhNS9mSEVCQkRHQUtWNS9m?= =?utf-8?B?c1ZTUU9maENrK2RUc2JMK3lDd2NNdzZVVllKbWVtalhiWEZ5blNRdGx5UnhD?= =?utf-8?B?NWpaWmZPK2owNzBWNUE3V0F5bzVRTFNJY3UxWjd6MTUrVnpuYVRKQkpyWi9h?= =?utf-8?B?Yms1YjdNbXA1amtMcXhqZE5tTzJ0RkxhQUZhb2F0cU1janpOWEgyVm51N1JS?= =?utf-8?B?QTJ5WUtrVW9nRVdVRWZQZkhkWGpmVE50YzNodE12bkYvdjZWcGRhYlVtbWIz?= =?utf-8?B?VWV4TzI4QXhiWG05NFRnY1ZhWHAvSm9mV2c0Rnp5TW9UTTNlbEt5OE45azRV?= =?utf-8?B?RUkzOVppL1RLWDBxcjhTbkRMQUpwYm9lNFluS3Y3aGM0bVJpVFhoUm5JbDVv?= =?utf-8?B?NWYxYklDckdDVjBDK2w3T0VnSjVVQlQvYzRRZDVHWHBFa0llVTVtMFpvNGlS?= =?utf-8?B?Z3RNVTBiVDV3TCtYUFZDWCswaWNJcXhTVFR2SjBnOExraldIQ1B5aE9tYVFt?= =?utf-8?B?MFNoaW5NRGhKWUExd0d2QzB4WWw4YjdXRHB2eUlqWmhXMmc3cUdQbVJucXds?= =?utf-8?B?dnpDMmQ0T1l5MlB6aEFmVkhvWmVBSkYrTm9teDBVUFBVbjBwMjdUQ2RlaEMz?= =?utf-8?B?ejZiLzU4Y0pJc09YQzJnUVJXc0ZOUkx6OXZOSWV5dzdaOUN4Wi9XcHZURW15?= =?utf-8?B?RFNpVWN3UXptcW9RaVJSQ0ZFZTZleFE4WTNIeXAvOFZRaE9YYnNENkxpZDFr?= =?utf-8?B?WXptKzlaaVRZRzBSUkltbVA3REJIMGpCWTF4RHlmeTJZNkRJRG5qcTVac0xl?= =?utf-8?B?ZlpyWkcrcnh6TUlKTDl5TmZzWmdSQm1iWlJZZVZ0L0NOTTdQR3BZT1pSUGlX?= =?utf-8?B?amc0NTFwSnp1VTFhRGdlL0UwcTh5dTQwYU5pc1JIUTBibkpReEIyeHEwakh1?= =?utf-8?B?ZVM2eDNUQlBHbCtLV1I3WkUwV1FpUk4wVVk3SlZ0VjF2RGdLMUM2b3lrY0Ny?= =?utf-8?B?eDhJMnVhYTlodnl0dG9id0k1eTR2NTJ3anR2azNHcEI3d2Rpb1Z3QXBCOHJ5?= =?utf-8?B?VUdTOU8wdWxaNjVWVlBQZEVJSHBTR01RQnE2eUhReWhUV0hibjhydz09?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3bf22082-abd2-4a27-fdff-08de8b23cc9e X-MS-Exchange-CrossTenant-AuthSource: AS4PR04MB9386.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2026 10:38:20.7409 (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: cUlVjgj5I/E6GOElNRSNzx1btL5q9g/PaBzpyKRlHJsdorf4eAE1g60ZcYOjFVD8 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7765 On some boards such as i.MX8MQ-EVK, the PCIe driver may take up to 200ms to restore the PCIe link during the no_irq resume phase. This causes key press events to be lost because the key may be released before the timer starts running, as interrupts are disabled during this 200ms window. Report key press events directly in interrupt handler to prevent event loss during system suspend. Signed-off-by: Joy Zou --- drivers/input/keyboard/snvs_pwrkey.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/drivers/input/keyboard/snvs_pwrkey.c b/drivers/input/keyboard/= snvs_pwrkey.c index bab3ab57fdac77256be75a080773ea99372ec9c7..b557c1618d7369e872c6ce708a7= b3017264ee385 100644 --- a/drivers/input/keyboard/snvs_pwrkey.c +++ b/drivers/input/keyboard/snvs_pwrkey.c @@ -78,6 +78,16 @@ static irqreturn_t imx_snvs_pwrkey_interrupt(int irq, vo= id *dev_id) =20 pm_wakeup_event(input->dev.parent, 0); =20 + /* + * Report key press events directly in interrupt handler to prevent event + * loss during system suspend. + */ + if (pdev->dev.power.is_suspended) { + pdata->keystate =3D 1; + input_report_key(input, pdata->keycode, 1); + input_sync(input); + } + regmap_read(pdata->snvs, SNVS_LPSR_REG, &lp_status); if (lp_status & SNVS_LPSR_SPO) { if (pdata->minor_rev =3D=3D 0) { --=20 2.37.1