[PATCH v2 39/57] irqdomain: ppc: Switch irq_domain_add_nomap() to use fwnode

Partially applied
From:Jiri Slaby (SUSE) <jirislaby@kernel.org>
Date:
Message-ID:<20250319092951.37667-40-jirislaby@kernel.org>
Patch:v2 · 39/57
Language:zh_CN
Patch-ID:4d8baab25bd599ce768d259d0d20a1e42e896ff0
Files:Documentation/core-api/irq/irq-domain.rstDocumentation/translations/zh_CN/core-api/irq/irq-domain.rstarch/powerpc/platforms/powermac/smp.carch/powerpc/platforms/ps3/interrupt.cinclude/linux/irqdomain.h

Patch content 5 changed files

All irq_domain_add_*() functions are going away. PowerPC is the onlyuser of irq_domain_add_nomap() and there is no irq_domain_create_nomap()complement. Therefore, to align with the rest of kernel, renameirq_domain_add_nomap() to irq_domain_create_nomap() and acceptfwnode_handle instead of device_node. Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>Cc: Alex Shi <alexs@kernel.org>Cc: Yanteng Si <si.yanteng@linux.dev>Cc: Dongliang Mu <dzm91@hust.edu.cn>Cc: Madhavan Srinivasan <maddy@linux.ibm.com>Cc: Michael Ellerman <mpe@ellerman.id.au>Cc: Nicholas Piggin <npiggin@gmail.com>Cc: Christophe Leroy <christophe.leroy@csgroup.eu>Cc: Naveen N Rao <naveen@kernel.org>Cc: Geoff Levand <geoff@infradead.org>Cc: linuxppc-dev@lists.ozlabs.orgCc: Jonathan Corbet <corbet@lwn.net>Cc: linux-doc@vger.kernel.org--- Documentation/core-api/irq/irq-domain.rst                    | 2 +- Documentation/translations/zh_CN/core-api/irq/irq-domain.rst | 2 +- arch/powerpc/platforms/powermac/smp.c                        | 2 +- arch/powerpc/platforms/ps3/interrupt.c                       | 2 +- include/linux/irqdomain.h                                    | 4 ++-- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Documentation/core-api/irq/irq-domain.rst b/Documentation/core-api/irq/irq-domain.rstindex f88a6ee67a35..44f4ba5480df 100644--- a/Documentation/core-api/irq/irq-domain.rst+++ b/Documentation/core-api/irq/irq-domain.rst@@ -141,7 +141,7 @@ No Map  :: -	irq_domain_add_nomap()+	irq_domain_create_nomap()  The No Map mapping is to be used when the hwirq number is programmable in the hardware.  In this case it is best to program thediff --git a/Documentation/translations/zh_CN/core-api/irq/irq-domain.rst b/Documentation/translations/zh_CN/core-api/irq/irq-domain.rstindex 9174fce12c1b..ecb23cfbc9fc 100644--- a/Documentation/translations/zh_CN/core-api/irq/irq-domain.rst+++ b/Documentation/translations/zh_CN/core-api/irq/irq-domain.rst@@ -124,7 +124,7 @@ irq_domain_add_tree()和irq_domain_create_tree()在功能上是等价的,除  :: -	irq_domain_add_nomap()+	irq_domain_create_nomap()  当硬件中的hwirq号是可编程的时候,就可以采用无映射类型。 在这种情况下,最好将 Linux IRQ号编入硬件本身,这样就不需要映射了。 调用irq_create_direct_mapping()diff --git a/arch/powerpc/platforms/powermac/smp.c b/arch/powerpc/platforms/powermac/smp.cindex 09e7fe24fac1..88e92af8acf9 100644--- a/arch/powerpc/platforms/powermac/smp.c+++ b/arch/powerpc/platforms/powermac/smp.c@@ -190,7 +190,7 @@ static int __init psurge_secondary_ipi_init(void) { 	int rc = -ENOMEM; -	psurge_host = irq_domain_add_nomap(NULL, ~0, &psurge_host_ops, NULL);+	psurge_host = irq_domain_create_nomap(NULL, ~0, &psurge_host_ops, NULL);  	if (psurge_host) 		psurge_secondary_virq = irq_create_direct_mapping(psurge_host);diff --git a/arch/powerpc/platforms/ps3/interrupt.c b/arch/powerpc/platforms/ps3/interrupt.cindex 95e96bd61a20..a4ad4b49eef7 100644--- a/arch/powerpc/platforms/ps3/interrupt.c+++ b/arch/powerpc/platforms/ps3/interrupt.c@@ -743,7 +743,7 @@ void __init ps3_init_IRQ(void) 	unsigned cpu; 	struct irq_domain *host; -	host = irq_domain_add_nomap(NULL, PS3_PLUG_MAX + 1, &ps3_host_ops, NULL);+	host = irq_domain_create_nomap(NULL, PS3_PLUG_MAX + 1, &ps3_host_ops, NULL); 	irq_set_default_domain(host);  	for_each_possible_cpu(cpu) {diff --git a/include/linux/irqdomain.h b/include/linux/irqdomain.hindex 1480951a690b..984d0188f9ec 100644--- a/include/linux/irqdomain.h+++ b/include/linux/irqdomain.h@@ -431,13 +431,13 @@ static inline struct irq_domain *irq_domain_add_linear(struct device_node *of_no }  #ifdef CONFIG_IRQ_DOMAIN_NOMAP-static inline struct irq_domain *irq_domain_add_nomap(struct device_node *of_node,+static inline struct irq_domain *irq_domain_create_nomap(struct fwnode_handle *fwnode, 					 unsigned int max_irq, 					 const struct irq_domain_ops *ops, 					 void *host_data) { 	struct irq_domain_info info = {-		.fwnode		= of_fwnode_handle(of_node),+		.fwnode		= fwnode, 		.hwirq_max	= max_irq, 		.direct_max	= max_irq, 		.ops		= ops,-- 2.49.0