From nobody Fri Dec 19 16:50:12 2025 Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11011039.outbound.protection.outlook.com [52.101.65.39]) (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 D83A7311948 for ; Fri, 5 Dec 2025 15:57:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.65.39 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764950282; cv=fail; b=DcouoWse3yWBnNO5XddsuVo2pV+xsKU9SaUpmGm8OgbDRcgPKey50+E/3pWK9vivn//2KXCu7GU75/J1Iz9G1XGXD9HR9LhadeEdXFLWqLEJULy6Jiu5SjcDtLCdWKR5KQMuZYck/s6ja8hfn4KYGHfShRtdv9nAy9DUYozMyvI= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764950282; c=relaxed/simple; bh=C2+YzMD/Q51Si78UtIEyd8YyJ7Afhv/qzqigGe1c9SQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=VBVZAymBftHWHIi1MgocJn2FSg8ipWZsM1tM1po3NUNv7gg5IZOu4e3EMucPyjJd2tXTIOqtT95BxW8PoitPHc78I+4kd9aLJYRT9n37OIEwx+V+3xZMUXnzqkdyrm8d6gRHIIje1HaZ/R6Xto80BCPURU1RDS9PT1tZbSp7x44= 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=jMJws4TO; arc=fail smtp.client-ip=52.101.65.39 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="jMJws4TO" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Eeq+VI5RNgnQtuaBn32b/ru4qii9uaf3636IBx8ol1mdMBlNu/SPqwVLcgW++Tl9z2XdHRJUIPCmZufpg+2v+po5WiKImIyJICHOJP/PWOluvu0EDRcs1ao4/Zi/rH6yQVCyQ6bSpmaCvBj8xU0cCQb0IqhZ0LGfekXvmHZ6fOat3yBgukJkcQiViG6uSuarMCnf861ixSOLBxeDxuN6CIATTJrlwZAU//O676lsEOFreZrb382ddQtp+5kvnpjIBKJDG/dg/b7YyFXHe6oPpo1BnpUSA09KKlCkZuC+RIvbZugy/16M4MytHdlaUbqGoMGsjw4o00/D7legS9le6w== 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=rQb64afQ45RZmkq7b6G5aQGnWW6LgDIN5iB4p9oVhqc=; b=p/RsrQ8P7/k/nribC67GtBevNi4tSeBjP61qGt6iDjbVrfBuof+vri7FTvqe6wCQCkJooEiej7QHLWjV2G+eX3EB8bz6DNHEjOIg/F8/j08df2RPbOiL6DUkDdMTZK3d4E7G/+Yof+4xhw1v0YZPrs2xQiVOFcu3t2Id9ld9ropsfbTUhjt6J0/PO5QMP6b9nqcJhDSIFznZtGAGry4/MMMWtGQyOg1KJiSzTJHo8M42tcYcudGFX3TnIbH6bp4N1KGuLJix1v2SD9mtYDUCxhApBo1sj5MMYXTkIQlLbg7VaZf1fSM0dfy3POjiI4PygtGE4moxhlk4TaeLkx/1BA== 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=rQb64afQ45RZmkq7b6G5aQGnWW6LgDIN5iB4p9oVhqc=; b=jMJws4TO5EbmhAZIwLvP1cc6RwY67WIpsIUmTjQkauZPaI+A6h4QbUjx9th59oFNCH+wvPJ5nV0HfEDlH44cxmaiGQqhGyefFq73tp5rjg6NetjMcCYflVslgUCBQebe5WUSrpwOLmGBo+xYnqHN7sJ8rVFvf+vLmz3OrfGZ0O8SFRZINlSwBaF2EuFpIml6H1L7bMIcFiZnAynNTgfs/9e1mbmBqnJU7t3pS6W9yswJ3vhCdiN++Fb/QB3jbfI5rEt0XN96Ypnyo2ZMv2aGdrwXldCa963lmV3lm1dKFAq95kZB2DWEgyrANqVvBld1zhUy6ruMoL7WUvseuCf1tg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from PAXPR04MB8253.eurprd04.prod.outlook.com (2603:10a6:102:1bf::7) by GVXPR04MB10450.eurprd04.prod.outlook.com (2603:10a6:150:1e6::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9388.11; Fri, 5 Dec 2025 15:57:46 +0000 Received: from PAXPR04MB8253.eurprd04.prod.outlook.com ([fe80::b853:e05b:c1e5:41b7]) by PAXPR04MB8253.eurprd04.prod.outlook.com ([fe80::b853:e05b:c1e5:41b7%5]) with mapi id 15.20.9366.012; Fri, 5 Dec 2025 15:57:46 +0000 From: Ioana Ciornei To: Thomas Gleixner , Ulf Hansson , Geert Uytterhoeven , Johan Hovold , "Rafael J. Wysocki" , "Rob Herring (Arm)" , Greg Kroah-Hartman Cc: linux-kernel@vger.kernel.org Subject: [PATCH v2 1/2] irqchip/ls-extirq: convert to a platform driver Date: Fri, 5 Dec 2025 17:57:34 +0200 Message-Id: <20251205155735.2366732-2-ioana.ciornei@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251205155735.2366732-1-ioana.ciornei@nxp.com> References: <20251205155735.2366732-1-ioana.ciornei@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM0PR02CA0186.eurprd02.prod.outlook.com (2603:10a6:20b:28e::23) To PAXPR04MB8253.eurprd04.prod.outlook.com (2603:10a6:102:1bf::7) 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: PAXPR04MB8253:EE_|GVXPR04MB10450:EE_ X-MS-Office365-Filtering-Correlation-Id: 131646e6-c825-4636-070b-08de3417089b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014|19092799006; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?7gwq9LKZLin9kOxNBAnHZQxCBol/td9ldO5hsOsu3wf0zRiPWwqkVbLXPzAr?= =?us-ascii?Q?exWMp3zNv241Y4O+dRouiPeOOpE3K06IkhXMWv7vy0hmSl0vKgzJymTbeSM3?= =?us-ascii?Q?SOJ8v4fFjNkj9iXWWzhA31zrMCFAjDsy+OWfnyAeVpFzpbYHJqqLvaKpTZCk?= =?us-ascii?Q?RoCxqLxVhi9J2C52shzqbI7imlDc46icx4KFYIbdCJHhsGtsDBLbymumZ56M?= =?us-ascii?Q?ldBJw0Uq5am4c3E3aHL+RQ9geaxXBNOhFR5ba96XrZPUpcu9Czs70Kfwirga?= =?us-ascii?Q?zRVi+ROWeLi008OUu5Dor8N8NJyvpC9ROCf9TIUUkYYRZiMIAQ1AFgEagzEl?= =?us-ascii?Q?ryAN0sip4YJRWbz/a0dvRdqyRYS77LRumzfI/qBWYMMO3brN1Lu4S2USlp4C?= =?us-ascii?Q?0+J4UznTR4gQ7U8DEFxJBm6ab98y5fnyNgfWaBw6d45jrlPcZfxloVx/p1Cp?= =?us-ascii?Q?s+k6BQ5OAJDs8rE+x4WdfJnw3BVsEB6ZnaEwy/EVPzwKhaqKKWoxJMuHvB99?= =?us-ascii?Q?B2brdTnTYz4X7T/RBgmw2EznEQ8fzMOMAjQXEcRFydAYQZzHcOS1PV9xfPFD?= =?us-ascii?Q?LyL9LuiZ7bq60C4BfSzqepZCUJNmDy/2zu8PTPhPhuN/gW4RfG9OW266EsnI?= =?us-ascii?Q?RspXltDLxklCg9vvibo2dbRNmhinkriOMz4heUCPorP3elBxFOfoL8nNASqF?= =?us-ascii?Q?nslFZktRxXjp+4WvKon+8swy4d4mY84TNs/DuytdilXf6a6xRF3R8ciYyKtk?= =?us-ascii?Q?K5gd7iqVyK/pm/sg8M6N2ep8w53lxoiwlUQFGaoc8tQe/FO3yDfL/etR01Ey?= =?us-ascii?Q?J0aHnNygJGRNJOhJs1LttTKADqDaDX0hx+uNowWBOKq69v3xHSFDUVB93bJe?= =?us-ascii?Q?cnpkx9sB5LP6PZ6f6c4x8umkzA0gGCWrj8r7WbOSE+perz4Km+SQlJ8kLyou?= =?us-ascii?Q?OSArsbgLe977kZkO8CH1Ji9zs7SAChHJrEczjCBqYElW99TE09TE/HhfZx/h?= =?us-ascii?Q?2SzM6WwQJ8DOLGh0lmGG2Nf8h1k+9KSxb4LD2pIlPpox2WUihpoS9iNRRXnb?= =?us-ascii?Q?Nt6MO56rZq1mqSgWEfhom1BcOogIfw7CzhxfmpQER9l+pzuiLVGRHZJbsHwH?= =?us-ascii?Q?2Obkji75bBc5ao00YmgjTj98bVob2BO+fQTgYWiP0sqOHpiazcz+upQcvoAA?= =?us-ascii?Q?6OoawU9V+pOktjn8Rz5s18quI8Te/B/tiDlqRBdoaoK3OWi3iJvtu4iLUZmy?= =?us-ascii?Q?ia1xlH2O6GmgqMHkQAiItZ0fi7dw2oer8vAM0QopcpXgc7yqE7mNfWJJy504?= =?us-ascii?Q?Q2eq4KeLuj4K3VhaAuxrGpiw6w3YqxFgZo5i1wbEpE5cmUJgkqEADoHctcRr?= =?us-ascii?Q?pMns5C9+azuIZ+55K1xQpC+SUu9VZaVNK3aHZh6NVC0CFCjKAH3uwrcOF5gb?= =?us-ascii?Q?3iHx+wSoPTNqWArNYiD4kxb6XjhfMrJf?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR04MB8253.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014)(19092799006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ZanbmBAueYF7F8iGQliNaFU/2sK88NuL+KbGMpqTbIODMcLoNz9YGBszVJl/?= =?us-ascii?Q?vBuRKJKz3PeuSkbi1zlwzBku971LB0ar6E5aVYNZRiRtfOfNG2cBDsufr22g?= =?us-ascii?Q?liQbchL+IKlhlr0kUzy5wqp5MI73moQYC7c6s0JfQbpo/tife008ME3MhD6l?= =?us-ascii?Q?DOnm7VXEuaCzTPbP7l1X4tLpkcgaOacGiHAhnmhx3y2KKxTatlZGCMdMK3yY?= =?us-ascii?Q?zkSf0iVnu+m2SsZa2GzuSbXKFWI1oTPPV/vIX5HSRNTfYnBaIqg42UJaYAJF?= =?us-ascii?Q?qZev5tZMpgcHlglEQ8sloQs+eHTXp5lv71wZ7Aiv8YWsPQ1orxK2Iui+mq3e?= =?us-ascii?Q?kMHnNfR6sh671DKO4BNpcMVLekOVjFCYi6Etz0nL8UmV6eIWeyNvjIjcyyWz?= =?us-ascii?Q?6/zLwZ82UFO8HKmK3dWKNluAItrbkSWV7ELnTMdE6RGyKy1e4qw0mHFAJ0CY?= =?us-ascii?Q?KXl52q/OrI8fPHPJOO76BlS+MQLRg0QfoL0gKvYML/ndF+2qxmdK+yze+90y?= =?us-ascii?Q?ajZLCRAEHFkBomxHGBSdvkW2C2G4MDxEfrx1hQ6zDmeVIn2a4wej3w+IQYj6?= =?us-ascii?Q?4RlkPCsYTMmJQEFImez08feyCfkXp7ezJtlZU89HVlbKAHOEkzovSgEZKTU0?= =?us-ascii?Q?SK9wt+uwtNvm+27uKB1rCDL637SaVZafXU/c3/R5/fKm5A24i2VNfZSOMve2?= =?us-ascii?Q?WwdZgbuWS5EJ6KWpPeGesHy51HUKPxrXkt7IpeM5zgcL+7ZWAX/yj0vvxHi1?= =?us-ascii?Q?vgR0xHEjIVmBEwbdBfhxn0vpDWodnMjIPYIk8Xv6DahV3gReChABFIYYKAWC?= =?us-ascii?Q?5MAGxAseD4jMVs3bNVb/lw91k2MyVcRCep+YR63BgRi8fAz0uxJCDUcao4wr?= =?us-ascii?Q?Lbw8212J9U1vwKY4X761dxua2F2w5gVEfY3+riFOmMzJ2/r9icCYItTjxWbz?= =?us-ascii?Q?iUbcSLJ+GFgv4jnIjsW9dIpRMr+4AozekgG4zzdZ5oMu01J5EiUGFEY8ttzL?= =?us-ascii?Q?ip1+9J6OIhOmTl9NTyYjOQCC/2mPkzq+7Fv72eUzod1zlXwQz678QeT5z/Nr?= =?us-ascii?Q?xC/xJZw8zmSO8TELBaRAX0G0ZwCM3AzqzD/nq3N/sNai3h/EN7VAfe2ox214?= =?us-ascii?Q?+ZRLgjThcWcHcm018Cv84fssupIUkNF//HZW8DbsZ7Q2HEHeCCStlPANJ8yn?= =?us-ascii?Q?Q9eZXpELlcORM46gPekihZqbfrTPmQM4Jyq3uWt2GRC9YttY6NdS7jCIhAEE?= =?us-ascii?Q?uaXQ8WF4wayUB0nuNSlvtKEx93tNfDT/0ZwL+N+jb/a4B7EIois4s0dn2Ood?= =?us-ascii?Q?3PpSfAfLLfDl8fwKuLgJDHWa3s0dcttY3fCQnDl01lFw/M2YQx/qh5tEqxM2?= =?us-ascii?Q?kTPM7GmltMtRyKzV4E0vl5bcXVh1SLfDvtkP6J6EIUglaBSdttJ5EJz0eOZF?= =?us-ascii?Q?1O2Ndz+fPCuGpLZcTsmSuRSmheVVtMxFWBd+5Zwih91MH1qweL6T6f/Teowx?= =?us-ascii?Q?dhd56CFeBGE4cY7iaOgj7Vl1gePhnkqDG2sedVxNGum6VGU5dkeq+OCzLjGT?= =?us-ascii?Q?hMTSMGP6/qJSL5h4qJALSIsWy8xQV+qqIBkbFEny?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 131646e6-c825-4636-070b-08de3417089b X-MS-Exchange-CrossTenant-AuthSource: PAXPR04MB8253.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Dec 2025 15:57:46.7311 (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: qy9kBwR2Po8Zod9BcoDeusYs/XWm3Hk93vkYhfv7TC+pKxxelJOC10kg1Sf5Tug34BhBe5qh1skbQZ8IiNhfNA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB10450 Content-Type: text/plain; charset="utf-8" Since there is no need for ls-extirq to be initialized early, convert it to a proper platform driver. Instead of using IRQCHIP_DECLARE, add an of_device_id array with the same compatible strings as before. Also change the prototype and name of the probe function and adjust it to a platform_device structure. With this change we also have the added advantage of avoiding the irqchip_init() -> of_irq_init() code path which imposes dt checks that the ls-extirq does not comply with because of its improper use of the interrupt-map property. Fixes: 1b1f04d8271e ("of/irq: Ignore interrupt parent for nodes without int= errupts") Signed-off-by: Ioana Ciornei --- Changes in v2: - use builtin_platform_driver drivers/irqchip/irq-ls-extirq.c | 32 +++++++++++++++++++++++++++----- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/drivers/irqchip/irq-ls-extirq.c b/drivers/irqchip/irq-ls-extir= q.c index 50a7b38381b9..23b3b6f84650 100644 --- a/drivers/irqchip/irq-ls-extirq.c +++ b/drivers/irqchip/irq-ls-extirq.c @@ -168,13 +168,21 @@ ls_extirq_parse_map(struct ls_extirq_data *priv, stru= ct device_node *node) return 0; } =20 -static int __init -ls_extirq_of_init(struct device_node *node, struct device_node *parent) +static int ls_extirq_probe(struct platform_device *pdev) { struct irq_domain *domain, *parent_domain; + struct device_node *node, *parent; + struct device *dev =3D &pdev->dev; struct ls_extirq_data *priv; int ret; =20 + node =3D dev->of_node; + parent =3D of_irq_find_parent(node); + if (!parent) { + dev_err(dev, "Failed to get IRQ parent node\n"); + return -ENODEV; + } + parent_domain =3D irq_find_host(parent); if (!parent_domain) { pr_err("Cannot find parent domain\n"); @@ -227,6 +235,20 @@ ls_extirq_of_init(struct device_node *node, struct dev= ice_node *parent) return ret; } =20 -IRQCHIP_DECLARE(ls1021a_extirq, "fsl,ls1021a-extirq", ls_extirq_of_init); -IRQCHIP_DECLARE(ls1043a_extirq, "fsl,ls1043a-extirq", ls_extirq_of_init); -IRQCHIP_DECLARE(ls1088a_extirq, "fsl,ls1088a-extirq", ls_extirq_of_init); +static const struct of_device_id ls_extirq_dt_ids[] =3D { + { .compatible =3D "fsl,ls1021a-extirq" }, + { .compatible =3D "fsl,ls1043a-extirq" }, + { .compatible =3D "fsl,ls1088a-extirq" }, + {} +}; +MODULE_DEVICE_TABLE(of, ls_extirq_dt_ids); + +static struct platform_driver ls_extirq_driver =3D { + .probe =3D ls_extirq_probe, + .driver =3D { + .name =3D "ls-extirq", + .of_match_table =3D ls_extirq_dt_ids, + } +}; + +builtin_platform_driver(ls_extirq_driver); --=20 2.25.1