From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 4F609CA5FDD for ; Sat, 3 Oct 2026 12:09:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:MIME-Version:Cc:To: Content-Transfer-Encoding:Content-Type:Message-Id:Date:Subject:From:Reply-To: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=Nn4tgKa/1gY0XiPW5QOQcb+gqFFSEOIKNWuttitTVFk=; b=xhdfgGc+YECftLwrH0bhH0r371 8gObCnUNWfW95oXMYaJoYHqzLefpRfgcfcPfHqi4kAptdgFHntwxYaiZE/+D+vJw/YcGZzYKKtkKe xoROyEqwuJq/7L5j1zY761T+zZk3ZnYNFl6niwFDFsdgxJVhhpspEjbFhv0bSua5ON2bpo2xtffd9 4qNV866zBo3RYczidISWVibomIuQfwiQcmJusW7gKPjiJt6zs5QrvdLAPG8mbFgS7VS+G29PYtC4o POuyitIcJb4B44NnydZUb5AQ4vuEB9di83LX0EZmTF7weej8VkUA+y7HJEFvkk4pdnwEIHWXQpwg3 KySIx47g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1xCyYU-0000000DSbM-22JS; Sat, 03 Oct 2026 12:09:30 +0000 Received: from mail-northeuropeazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c200::5] helo=DUZPR83CU001.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1xCyYS-0000000DSaY-16aS for linux-arm-kernel@lists.infradead.org; Sat, 03 Oct 2026 12:09:29 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=OoF1rs0b8GCg+0wrbF0/D3+UPHnbE0ogMol/WQVYPQ/ExKVjtwx34dK6wU0049J81Wm5JTZwThxjU30z3OVosejHrGC9uhErWib2uPoI5AXbw+/M+Unyvy+bO9gaxes8zvN2oqfjJdCWPrDihGOBmjVPoXkswyeUxmIIQ9PFkz+hMqN4svJwpzDqaISSgcAqlhMQThOO0Yyus3pLEcby7aHjbRdNOFQD07CTMBhDTA0FkUVA/QwZu0/67pzyvIMUrLTLoYBq0JMzDGRdUeL3Wtl4nb5c9i8WQyj5YmQz+Mk98cuxLPhMMwlwemv0yJnRb94jQ6IZOUNTZ12XQt5ewQ== 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=Nn4tgKa/1gY0XiPW5QOQcb+gqFFSEOIKNWuttitTVFk=; b=PzI+9PNUsGenpYrzjnJemQkc1qd48vMWc5hQEbfBY27ltUH16HpC0J+TRual0q+uZHhNSxJeR6QomABGHAIwpVOu94qEs2XszHgV33juBBOwmcod1n2QX7E1iJSAR64vyesecY/pDiNolT2t1SfBZzPbu+FtDnvG30eHZVRFN/aBl/SfyB4hVVLCnCxEd5JXnBRHprwbeSf6AXOVdgNEOI7XLnkD7BgXeNGWJfq+etCNaaEHpl/g+/VaspK3KOQyANwj4EMP+qCW2dvBe+ayAbt39QYfqakXiMk/RDEORZdC+UudqU0ShTMLhV9jv3G1M1EATMIkUJ1mjdMj/3Kyig== 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=Nn4tgKa/1gY0XiPW5QOQcb+gqFFSEOIKNWuttitTVFk=; b=hks5eLveyXHgzHdVSoz5ZRmaMZwZZR/fEFK5xEIHFsMHqCDRXJLj9yIIXXqRPvEs1ElVW+FA9Ks9bteRwunDEuoJBvZs+OWHGZeDAn5gKIZbKhXeifv5Rw9GbCopdsBhwOYHzSFjikXaygZXbpVWxhhM6E9jYZJvcAuHNmw1vgNDTawgff/KDN0adTTBNewbD2YwSqdT8eflMz7pDigWoxYdXZExn87DwKlp9aMtz9BxQhT8/J4FDWMerUEb8q4CJiB7ucs+5OFxjZBWIUxC0HWPZh9nd/R1W4uAvUcSL5+/D4WFzUh9GEyvh3n5mgDpsSwabnLCYI7f5J29pf8Ryw== Authentication-Results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AM8PR04MB7874.eurprd04.prod.outlook.com (2603:10a6:20b:24d::9) by DU0PR04MB9467.eurprd04.prod.outlook.com (2603:10a6:10:35b::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.472.20; Sat, 3 Oct 2026 12:09:21 +0000 Received: from AM8PR04MB7874.eurprd04.prod.outlook.com ([fe80::ac38:1699:6f18:c5d9]) by AM8PR04MB7874.eurprd04.prod.outlook.com ([fe80::ac38:1699:6f18:c5d9%6]) with mapi id 15.21.0451.022; Sat, 3 Oct 2026 12:09:21 +0000 From: "Peng Fan (OSS)" Subject: [PATCH 0/9] gpio: mxc: bug fixes and probe cleanup Date: Sat, 03 Oct 2026 20:06:42 +0800 Message-Id: <20261003-gpio-mxc-cleanup-v1-0-dad728ce27f2@nxp.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-B4-Tracking: v=1; b=H4sIANLvwGoC/yXMQQ6CMBBG4auQWTtJW6SJXsW4gPEHx2hpWiAkh LtTdfkt3tsoIykyXauNEhbNOoYCe6pInm0YwPooJmect8bUPEQd+bMKyxttmCPjfBHxzktjQSW LCb2uv+Xt/neeuxdk+n5o3w/nUIz8dAAAAA== X-Change-ID: 20261003-gpio-mxc-cleanup-e49cc626c51e To: Linus Walleij , Bartosz Golaszewski , Frank Li , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Shenwei Wang , Andy Shevchenko Cc: linux-gpio@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Peng Fan X-Mailer: b4 0.15.2 X-ClientProxiedBy: MA5PR01CA0110.INDPRD01.PROD.OUTLOOK.COM (2603:1096:a01:1d1::9) To AM8PR04MB7874.eurprd04.prod.outlook.com (2603:10a6:20b:24d::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM8PR04MB7874:EE_|DU0PR04MB9467:EE_ X-MS-Office365-Filtering-Correlation-Id: 87119eed-d615-4957-9892-08df21472812 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|1800799024|19092799006|23010399003|366016|6133799003|18002099003|10067099003|11063799006|56012099006; X-Microsoft-Antispam-Message-Info: zo+BHp9abOr5BhPGa8eP7OAyyVbCUf0X5B9fVC0lLyj4xTePF6FOVmxOl4sxjA5WqevFkUnCSsPOdt88085zbsQmPHSS2py3geQL5eVybD/rhmsvr9MJbgzVZQHBjgwytj0c3YrAFY9AwWbJbQG6C6Pk92nug8HsdoKAh4syjD+I3jUggjg1ptWTlt7nLfyGK4LK4O6PX/eSqGmS2bNma4bTyJAxhOz6+ahFvsLhAlmGBEyQOX5YFsYRL4GFS/3nTKc/9hWrXG5JFfQF36jSYx8ZZm5B/DMcM3GCnHRGKrn20J5etKeI9fZBBeKwL5JVgu0SX01jGs8b0wrAnOCDM+c+kkqcOe5ApzwCBiL9xQaOvOKBTyGdMAl+5EBDJ8GJRQoP+yXUTQ3auO7Jvnr4j3XZ4m4s8wTFuZApnl2GD9vgHTNe1m72bG8IF7SRwxgKKygRA1Q7tSAsyLL5llgvO2v/lmLLKcD6Qy4jOfA4nYUZiOBJ/tUEgEr2ZoczusrjK4mjkBZH7uL40teDd1MK+eZxRuB75VwjvNyGWtxUQ0JA292OwpR3LXCaXFWuDq069r0L8mt0yv630MBsrIHGRR6yRO/bmegHGElhroHkXVA/Yelpvh/deozjWCkjdU2BzqpvESsk1HntmKx0OJ9I47kldWINUUZzk3yDH96o5dc= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM8PR04MB7874.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(1800799024)(19092799006)(23010399003)(366016)(6133799003)(18002099003)(10067099003)(11063799006)(56012099006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UzRGcUNtcm95b0poZnZuMTdPTHpvWUtBWU53OTRJZ1JXWXorZndEd1AxYzNr?= =?utf-8?B?TnhCSDJ3NDEzOXJaZWJlVW80Q0RJaHhBaFdLOEVrWWR0R0NvRWJOVVRLZmc3?= =?utf-8?B?NzBGN0ZSYURhUnpCUHFMcFhkRXNvSm9lTjcya1k3QjlsL1dIRUEraXBldkJQ?= =?utf-8?B?dUtVTkhoci9LblR5akhOSGJGZFhKclJsVTZpZ1UyVmhHdk1mbENwSldEODlY?= =?utf-8?B?SW55eEJEWmtCTnVOSUV0Y2pRTzJHZkczZXYrSk5Oa0k3L1FhcG9BMHNwWEtm?= =?utf-8?B?emRuYXFsT0xRM3dmTUp5U2dOYjg0TTRCQTBZeTQ1MUtML1V6WXN5RXpHeWFj?= =?utf-8?B?bWNTZmk2aWVRVnZXbXdsTG1CeE1BMTc2cU0yZUNCVG9wOFp0NnFlZlJWMnZR?= =?utf-8?B?dzc2c1ZmdnNvSE9WSFF2dnp6OUNCYys3QU1PZ0ZDbktqNFFzeEV6d2FnSVFD?= =?utf-8?B?b0FMVFU0dktGRzI5QnB1Q2JtV0pXdit4OFJGU1c4eWtHMzAxRStVczY3MnpZ?= =?utf-8?B?SWw0ZUNVS0NDTCtXcDlaMktxZ2I2R3lKQnVCMy9YZlNtZnlybC9RQ1YyTkxE?= =?utf-8?B?TWNMRFltUytCZTl4TEIrSDlRbkw2aHlTTHZYdmtnYzJ6WTh6QXd6Mnp6SUFz?= =?utf-8?B?QUhZNUR1NTg0WU9UTGpIUGFuZ20zQlREM0ZPRjNiY2pkNFN6eGJXVTczYzJO?= =?utf-8?B?VGFDeCtwTWJJRFBOUTJiT2RlMTFLUkdXQlpjWWkycWpLY1paYUQvOXFBVWg4?= =?utf-8?B?ZERUZkNnTWpMcDBFNktMSmEzWDRCWC9IUUlZVWcvV3VGdDFHeGZNN21uVitC?= =?utf-8?B?SU9QcUZQVVkxYmJ5cGd2d2UxQzhrV0MwYmJVZEZRODVsdStZSmRMY3JIWmJv?= =?utf-8?B?ZU55YVpaekRFUUg0ZlpzSVFqUXlvbjQ1cDh6MHdYMXYyT2JNY0VXT1dLQitP?= =?utf-8?B?azg4b1E0aVhERGJidVgvSW5DT1ZUTFZpa1NmUGgydlZ5eng4bjF6UnRVYkU0?= =?utf-8?B?N2E1YTl2S0ZKYlo5TnhZNXZqK3pIeDdnUzByNHk4N25CNEVBV2JnekxreUNy?= =?utf-8?B?U1hsOWpZVnlQb1Z6SGVFWENaMFpFSzhNSzk5U3FNSE5HTWR5YmRJNzk1cHpI?= =?utf-8?B?ZkR3azI4ZnhzbVVIamY1ZUk2M2UrYUNpNEhtcjZYb0loNkFQTFg3NzkreEdh?= =?utf-8?B?VWd2TW9mYTBXMnFzMzdYTDdpQjZxZElqcnJ4YkxpMWdBYzQ1OTFISE11ZjFN?= =?utf-8?B?cmpoMXBYSndpaHovSFFQY0pvMXd5RnhaUzd5OU9kNUg4RmU1SHB2ZXlqTDVY?= =?utf-8?B?R3BGU3gyVEZ5SzdiRksycmsrVEIzeFFNRTBlcTBrdzFCMmF2OTRja3RPZkJR?= =?utf-8?B?NiswRndNR09JYzRQakVyNVJMWHMxOCtvSDhydFgvK09aVFFZcGVjN0x0VXNB?= =?utf-8?B?TjQ5MWlxWXpUenhjQzQ4cFBUdmpnTFdadi94Nmt6MzRSQmNNcGp0Mkdma0t2?= =?utf-8?B?QnBFQTRUdVkyRmhHQjlXZFJibXZJVVhzR3RxM1NLOE56WnVadWRHa0FITjZN?= =?utf-8?B?Rm1mMFBETHo3VExlUkhwZmdxVkdlcXFMck1UMTZqZnlzeXc2SG9UendRdktL?= =?utf-8?B?SXlvTE1LUlBybnpaMUNiSDRldVRzSnNtalIwU2RiRnVzYVRZTkJ2cTdrYUln?= =?utf-8?B?aGpQSitUbmFHMExnRmJYVGZNMXBzR3EybTR5SFA1MGFxcHltNk0zWEtzREd1?= =?utf-8?B?WUp4dDhqeVNLWnU1RFZDZXZnbUNFOTdwWE1mZkVRTTM2Qkt6US9oSGhRZEVW?= =?utf-8?B?TUhwUXZOUWpXWGtlcnFEZTdzeWF1dUFjM2NrSFpleC9YSkNTMzRVOUFqaDF5?= =?utf-8?B?dDcycjRmQ2NWa1M1T29Ndis5VXZIQlhpcFZFMDY4YnJrbVV2TjRpT3hJbUVl?= =?utf-8?B?TkREY1NJb3VqbmpCQ2RvSWM2SEV3alFtbkdORXlCbWRKMTljcCt5a3ErU1JM?= =?utf-8?B?S2dJSnVxYWh5R0cwQVA4NHFTYzV4R0srSTIybEVsVzBFZVNUWXVJa2IxRjhV?= =?utf-8?B?K1lRSmFnK3NsUTJ6d2lYMUVFTHlEZnJIcENlVGFMR09YVHlnMlZ2eGNnaFBs?= =?utf-8?B?N0FCVzNKSXFZSEU2TmdCc2Q0ZmxGN3ZzQWZIQlhiSnl5dS9iVjJUNUR2SSts?= =?utf-8?B?YXVjNHVYSTlLTTUvZzZNdlBRdGxHQi9iSVNibjErc2dhMnFhS0ZUL2tJaG1n?= =?utf-8?B?M0pPVE1vTGhjUVlneUt2NmM5UWRtK1NUWDdOVUplTlpscGlWTEFWdWxQWkgr?= =?utf-8?B?NTZvU0FraUUzTWZGOXhVWmVrZWFIWVltZVREZFMweUtGb0REd2NPNS9ZUlIr?= =?utf-8?Q?LfLthy2XO6enGGWZW5iB1nLmq6hktGDZeWC/A?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 87119eed-d615-4957-9892-08df21472812 X-MS-Exchange-CrossTenant-AuthSource: AM8PR04MB7874.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2026 12:09:21.1419 (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: CTj8K/AQGwPrxZWfOHzP1DOIMhtunk+7RuEYiA+AzJwAJggWtsPzHiC6BQRN6T1Prn5YunP6KeAEErWFvggtZntxj2i0KL91uhMZX+RNIVoY4VSNxYXxNTn+FV8BxzJl X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR04MB9467 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20261003_050928_323301_D8F21C7A X-CRM114-Status: UNSURE ( 7.11 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Two bug fixes and follows up with probe modernization and bitops cleanup. We not receive bug report and met issues during our test, so patch 1&2 are not critial for now. Patches 1-2 are bug fixes: 1. Fix a race where the chained IRQ handler is installed before the IRQ domain, generic IRQ chip, and port list entry are ready. Also fixes a latent use-after-free on probe failure paths that never unregistered the handler. 2. Fix wakeup_pads being typed as u32 while accessed through set_bit/clear_bit (unsigned long *), causing adjacent field corruption on 64-bit platforms. Switch to atomic bitops for concurrency safety and fix the disable path to preserve the wakeup_pads bit on disable_irq_wake() failure. Patches 3-9 are cleanups, each building on the previous: 3. Cache of_device_is_compatible() results at probe into struct fields, avoiding repeated DT string comparisons in suspend/resume. 4. Use devm_add_action_or_reset() for irq_domain_remove(), removing manual cleanup in error paths. 5. Switch to devm-managed PM runtime and dev_err_probe(), eliminating the remaining goto error labels entirely. 6. Introduce a local 'dev' variable and migrate to device_is_compatible() for firmware-agnostic matching. 7. Introduce MXC_ICR_REG/MXC_ICR_MASK macros and use field_prep()/field_get() for ICR register access, replacing duplicated magic-number arithmetic in gpio_set_irq_type() and mxc_flip_edge(). 8. Replace open-coded '1 << n' with BIT() throughout the driver. 9. Simplify gpio_set_wake_irq() using irq_set_irq_wake() and assign_bit(). Signed-off-by: Peng Fan --- Peng Fan (9): gpio: mxc: fix race between chained IRQ handler install and probe completion gpio: mxc: fix wakeup_pads bit operations for correctness gpio: mxc: cache compatible checks at probe time gpio: mxc: use devm action for irq_domain cleanup gpio: mxc: use devres-managed PM runtime and dev_err_probe gpio: mxc: use local dev variable and device_is_compatible() gpio: mxc: introduce MXC_ICR macros and use field_prep/field_get gpio: mxc: use BIT() macro for single-bit operations gpio: mxc: simplify gpio_set_wake_irq() with irq_set_irq_wake and assign_bit drivers/gpio/gpio-mxc.c | 158 ++++++++++++++++++++++++------------------------ 1 file changed, 79 insertions(+), 79 deletions(-) --- base-commit: f0406245cb9855e6318335a8a223551354291a46 change-id: 20261003-gpio-mxc-cleanup-e49cc626c51e Best regards, -- Peng Fan