[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250115085409.1629787-11-jirislaby@kernel.org>
Date: Wed, 15 Jan 2025 09:53:59 +0100
From: "Jiri Slaby (SUSE)" <jirislaby@...nel.org>
To: tglx@...utronix.de
Cc: maz@...nel.org,
linux-kernel@...r.kernel.org,
"Jiri Slaby (SUSE)" <jirislaby@...nel.org>
Subject: [PATCH 10/18] irqdomain: Rename _create functions to _add_*_fwnode
Continuing the unifying idea of the previous patch, all "_create"
functions are renamed to "_add" and appended with a "_fwnode" suffix.
Now, the interface is:
* dom = irq_domain_add_linear_fwnode(fwnode, ...)
* irq_domain_remove(dom)
Note: Sorry, I am not capable of wrapping chinese text properly.
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@...nel.org>
---
Documentation/core-api/irq/irq-domain.rst | 42 +++++++++----------
.../driver-api/driver-model/devres.rst | 2 +-
.../zh_CN/core-api/irq/irq-domain.rst | 22 +++++-----
arch/arm64/kvm/arch_timer.c | 2 +-
arch/mips/pci/pci-xtalk-bridge.c | 2 +-
arch/mips/sgi-ip27/ip27-irq.c | 2 +-
arch/mips/sgi-ip30/ip30-irq.c | 2 +-
arch/powerpc/platforms/powernv/pci-ioda.c | 2 +-
arch/powerpc/platforms/pseries/msi.c | 2 +-
arch/powerpc/sysdev/xics/xics-common.c | 2 +-
arch/powerpc/sysdev/xive/common.c | 2 +-
arch/x86/kernel/apic/io_apic.c | 2 +-
arch/x86/kernel/apic/vector.c | 2 +-
arch/x86/platform/uv/uv_irq.c | 2 +-
drivers/acpi/irq.c | 2 +-
drivers/gpio/gpio-bcm-kona.c | 2 +-
drivers/gpio/gpio-mockup.c | 2 +-
drivers/gpio/gpio-mpc8xxx.c | 2 +-
drivers/gpio/gpio-sim.c | 2 +-
drivers/gpio/gpio-uniphier.c | 2 +-
drivers/gpio/gpio-xgene-sb.c | 2 +-
drivers/gpio/gpiolib.c | 4 +-
drivers/hid/hid-rmi.c | 2 +-
drivers/i2c/i2c-core-base.c | 2 +-
drivers/iio/dummy/iio_dummy_evgen.c | 2 +-
drivers/input/rmi4/rmi_driver.c | 2 +-
drivers/iommu/amd/init.c | 2 +-
drivers/iommu/amd/iommu.c | 2 +-
drivers/iommu/hyperv-iommu.c | 2 +-
drivers/iommu/intel/irq_remapping.c | 2 +-
drivers/irqchip/irq-apple-aic.c | 2 +-
drivers/irqchip/irq-armada-370-xp.c | 2 +-
drivers/irqchip/irq-bcm2836.c | 2 +-
drivers/irqchip/irq-gic-v2m.c | 2 +-
drivers/irqchip/irq-gic-v3-its.c | 2 +-
drivers/irqchip/irq-gic-v3-mbi.c | 2 +-
drivers/irqchip/irq-gic-v3.c | 2 +-
drivers/irqchip/irq-gic-v4.c | 4 +-
drivers/irqchip/irq-gic.c | 2 +-
drivers/irqchip/irq-imx-mu-msi.c | 2 +-
drivers/irqchip/irq-ixp4xx.c | 2 +-
drivers/irqchip/irq-loongarch-avec.c | 2 +-
drivers/irqchip/irq-loongarch-cpu.c | 4 +-
drivers/irqchip/irq-loongson-eiointc.c | 2 +-
drivers/irqchip/irq-loongson-htvec.c | 2 +-
drivers/irqchip/irq-loongson-liointc.c | 4 +-
drivers/irqchip/irq-loongson-pch-lpc.c | 2 +-
drivers/irqchip/irq-loongson-pch-msi.c | 2 +-
drivers/irqchip/irq-loongson-pch-pic.c | 2 +-
drivers/irqchip/irq-meson-gpio.c | 2 +-
drivers/irqchip/irq-mvebu-gicp.c | 2 +-
drivers/irqchip/irq-mvebu-odmi.c | 2 +-
drivers/irqchip/irq-mvebu-sei.c | 6 +--
drivers/irqchip/irq-partition-percpu.c | 2 +-
drivers/irqchip/irq-qcom-mpm.c | 2 +-
drivers/irqchip/irq-rda-intc.c | 2 +-
drivers/irqchip/irq-riscv-aplic-direct.c | 2 +-
drivers/irqchip/irq-riscv-imsic-platform.c | 2 +-
drivers/irqchip/irq-riscv-intc.c | 2 +-
drivers/irqchip/irq-sifive-plic.c | 2 +-
drivers/irqchip/irq-uniphier-aidet.c | 2 +-
drivers/irqchip/qcom-irq-combiner.c | 4 +-
drivers/irqchip/qcom-pdc.c | 2 +-
drivers/mfd/ioc3.c | 2 +-
drivers/misc/lan966x_pci.c | 2 +-
drivers/net/usb/smsc95xx.c | 2 +-
.../pci/controller/dwc/pcie-designware-host.c | 2 +-
drivers/pci/controller/pci-tegra.c | 2 +-
drivers/pci/controller/pcie-apple.c | 4 +-
drivers/pci/controller/pcie-mediatek.c | 2 +-
drivers/pci/controller/pcie-rcar-host.c | 2 +-
drivers/pci/controller/pcie-xilinx.c | 2 +-
drivers/pinctrl/samsung/pinctrl-exynos.c | 4 +-
drivers/pinctrl/samsung/pinctrl-s3c64xx.c | 4 +-
drivers/pinctrl/stm32/pinctrl-stm32.c | 2 +-
.../platform/x86/intel/crystal_cove_charger.c | 2 +-
drivers/soundwire/irq.c | 2 +-
include/linux/irq_sim.h | 8 ++--
include/linux/irqdomain.h | 18 ++++----
kernel/irq/ipi-mux.c | 2 +-
kernel/irq/irq_sim.c | 28 ++++++-------
kernel/irq/irqdomain.c | 10 ++---
kernel/irq/msi.c | 2 +-
sound/soc/codecs/rt5677.c | 2 +-
84 files changed, 152 insertions(+), 152 deletions(-)
diff --git a/Documentation/core-api/irq/irq-domain.rst b/Documentation/core-api/irq/irq-domain.rst
index 9a80112360d8..e315489b1292 100644
--- a/Documentation/core-api/irq/irq-domain.rst
+++ b/Documentation/core-api/irq/irq-domain.rst
@@ -42,11 +42,11 @@ irq_domain usage
================
An interrupt controller driver creates and registers an irq_domain by
-calling one of the irq_domain_add_*_of_node() or irq_domain_create_*()
-functions (each mapping method has a different allocator function,
-more on that later). The function will return a pointer to the
-irq_domain on success. The caller must provide the allocator function
-with an irq_domain_ops structure.
+calling one of the irq_domain_add_*_of_node() or
+irq_domain_add_*_fwnode() functions (each mapping method has a
+different allocator function, more on that later). The function will
+return a pointer to the irq_domain on success. The caller must provide
+the allocator function with an irq_domain_ops structure.
In most cases, the irq_domain will begin empty without any mappings
between hwirq and IRQ numbers. Mappings are added to the irq_domain
@@ -94,7 +94,7 @@ Linear
::
irq_domain_add_linear_of_node()
- irq_domain_create_linear()
+ irq_domain_add_linear_fwnode()
The linear reverse map maintains a fixed size table indexed by the
hwirq number. When a hwirq is mapped, an irq_desc is allocated for
@@ -106,7 +106,7 @@ map are fixed time lookup for IRQ numbers, and irq_descs are only
allocated for in-use IRQs. The disadvantage is that the table must be
as large as the largest possible hwirq number.
-irq_domain_add_linear_of_node() and irq_domain_create_linear() are
+irq_domain_add_linear_of_node() and irq_domain_add_linear_fwnode() are
functionally equivalent, except for the first argument is different -
the former accepts an Open Firmware specific 'struct device_node',
while the latter accepts a more general abstraction 'struct
@@ -120,7 +120,7 @@ Tree
::
irq_domain_add_tree_of_node()
- irq_domain_create_tree()
+ irq_domain_add_tree_fwnode()
The irq_domain maintains a radix tree map from hwirq numbers to Linux
IRQs. When an hwirq is mapped, an irq_desc is allocated and the
@@ -131,7 +131,7 @@ since it doesn't need to allocate a table as large as the largest
hwirq number. The disadvantage is that hwirq to IRQ number lookup is
dependent on how many entries are in the table.
-irq_domain_add_tree_of_node() and irq_domain_create_tree() are
+irq_domain_add_tree_of_node() and irq_domain_add_tree_fwnode() are
functionally equivalent, except for the first argument is different -
the former accepts an Open Firmware specific 'struct device_node',
while the latter accepts a more general abstraction 'struct
@@ -164,8 +164,8 @@ Legacy
irq_domain_add_simple_of_node()
irq_domain_add_legacy_of_node()
- irq_domain_create_simple()
- irq_domain_create_legacy()
+ irq_domain_add_simple_fwnode()
+ irq_domain_add_legacy_fwnode()
The Legacy mapping is a special case for drivers that already have a
range of irq_descs allocated for the hwirqs. It is used when the
@@ -193,14 +193,14 @@ mapping Linux IRQs 0-15 so that existing ISA drivers get the correct IRQ
numbers.
Most users of legacy mappings should use
-irq_domain_add_simple_of_node() or irq_domain_create_simple() which
-will use a legacy domain only if an IRQ range is supplied by the
+irq_domain_add_simple_of_node() or irq_domain_add_simple_fwnode()
+which will use a legacy domain only if an IRQ range is supplied by the
system and will otherwise use a linear domain mapping. The semantics
of this call are such that if an IRQ range is specified then
descriptors will be allocated on-the-fly for it, and if no range is
specified it will fall through to irq_domain_add_linear_of_node() or
-irq_domain_create_linear() which means *no* irq descriptors will be
-allocated.
+irq_domain_add_linear_fwnode() which means *no* irq descriptors will
+be allocated.
A typical use case for simple domains is where an irqchip provider
is supporting both dynamic and static IRQ assignments.
@@ -211,12 +211,12 @@ that the driver using the simple domain call irq_create_mapping()
before any irq_find_mapping() since the latter will actually work
for the static IRQ assignment case.
-irq_domain_add_simple_of_node() and irq_domain_create_simple() as well
-as irq_domain_add_legacy_of_node() and irq_domain_create_legacy() are
-functionally equivalent, except for the first argument is different -
-the former accepts an Open Firmware specific 'struct device_node',
-while the latter accepts a more general abstraction 'struct
-fwnode_handle'.
+irq_domain_add_simple_of_node() and irq_domain_add_simple_fwnode() as
+well as irq_domain_add_legacy_of_node() and
+irq_domain_add_legacy_fwnode() are functionally equivalent, except for
+the first argument is different - the former accepts an Open Firmware
+specific 'struct device_node', while the latter accepts a more general
+abstraction 'struct fwnode_handle'.
Hierarchy IRQ domain
--------------------
diff --git a/Documentation/driver-api/driver-model/devres.rst b/Documentation/driver-api/driver-model/devres.rst
index d594d0ea0e9d..3cce1f46e165 100644
--- a/Documentation/driver-api/driver-model/devres.rst
+++ b/Documentation/driver-api/driver-model/devres.rst
@@ -337,7 +337,7 @@ IRQ
devm_irq_alloc_descs_from()
devm_irq_alloc_generic_chip()
devm_irq_setup_generic_chip()
- devm_irq_domain_create_sim()
+ devm_irq_domain_add_sim_fwnode()
LED
devm_led_classdev_register()
diff --git a/Documentation/translations/zh_CN/core-api/irq/irq-domain.rst b/Documentation/translations/zh_CN/core-api/irq/irq-domain.rst
index 3fcd5b8d508d..795a5218819f 100644
--- a/Documentation/translations/zh_CN/core-api/irq/irq-domain.rst
+++ b/Documentation/translations/zh_CN/core-api/irq/irq-domain.rst
@@ -43,7 +43,7 @@ irq_domain的用法
================
中断控制器驱动程序通过以下方式创建并注册一个irq_domain。调用
-irq_domain_add_*_of_node() 或 irq_domain_create_*()函数之一(每个映射方法都有不
+irq_domain_add_*_of_node() 或 irq_domain_add_*_fwnode()函数之一(每个映射方法都有不
同的分配器函数,后面会详细介绍)。 函数成功后会返回一个指向irq_domain的指针。
调用者必须向分配器函数提供一个irq_domain_ops结构体。
@@ -84,7 +84,7 @@ irq_domain映射的类型
::
irq_domain_add_linear_of_node()
- irq_domain_create_linear()
+ irq_domain_add_linear_fwnode()
线性反向映射维护了一个固定大小的表,该表以hwirq号为索引。 当一个hwirq被映射
时,会给hwirq分配一个irq_desc,并将irq号存储在表中。
@@ -93,7 +93,7 @@ irq_domain映射的类型
映射的优点是固定时间查找IRQ号,而且irq_descs只分配给在用的IRQ。 缺点是该表
必须尽可能大的hwirq号。
-irq_domain_add_linear_of_node()和irq_domain_create_linear()在功能上是等价的,
+irq_domain_add_linear_of_node()和irq_domain_add_linear_fwnode()在功能上是等价的,
除了第一个参数不同--前者接受一个Open Firmware特定的 'struct device_node' 而
后者接受一个更通用的抽象 'struct fwnode_handle' 。
@@ -105,7 +105,7 @@ irq_domain_add_linear_of_node()和irq_domain_create_linear()在功能上是等
::
irq_domain_add_tree_of_node()
- irq_domain_create_tree()
+ irq_domain_add_tree_fwnode()
irq_domain维护着从hwirq号到Linux IRQ的radix的树状映射。 当一个hwirq被映射时,
一个irq_desc被分配,hwirq被用作radix树的查找键。
@@ -113,7 +113,7 @@ irq_domain维护着从hwirq号到Linux IRQ的radix的树状映射。 当一个hw
如果hwirq号可以非常大,树状映射是一个很好的选择,因为它不需要分配一个和最大hwirq
号一样大的表。 缺点是,hwirq到IRQ号的查找取决于表中有多少条目。
-irq_domain_add_tree_of_node()和irq_domain_create_tree()在功能上是等价的,除了第一
+irq_domain_add_tree_of_node()和irq_domain_add_tree_fwnode()在功能上是等价的,除了第一
个参数不同——前者接受一个Open Firmware特定的 'struct device_node' ,而后者接受
一个更通用的抽象 'struct fwnode_handle' 。
@@ -140,8 +140,8 @@ Linux IRQ号编入硬件本身,这样就不需要映射了。 调用irq_create
irq_domain_add_simple_of_node()
irq_domain_add_legacy_of_node()
- irq_domain_create_simple()
- irq_domain_create_legacy()
+ irq_domain_add_simple_fwnode()
+ irq_domain_add_legacy_fwnode()
传统映射是已经为 hwirqs 分配了一系列 irq_descs 的驱动程序的特殊情况。 当驱动程
序不能立即转换为使用线性映射时,就会使用它。 例如,许多嵌入式系统板卡支持文件使用
@@ -159,10 +159,10 @@ Linux IRQ号编入硬件本身,这样就不需要映射了。 调用irq_create
映射Linux IRQ 0-15,这样现有的ISA驱动程序就能得到正确的IRQ号。
大多数使用传统映射的用户应该使用irq_domain_add_simple_of_node()或
-irq_domain_create_simple(),只有在系统提供IRQ范围时才会使用传统域,否则将使用
+irq_domain_add_simple_fwnode(),只有在系统提供IRQ范围时才会使用传统域,否则将使用
线性域映射。这个调用的语义是这样的:如果指定了一个IRQ范围,那么 描述符将被即时分配
给它,如果没有范围被分配,它将不会执行 irq_domain_add_linear_of_node() 或
-irq_domain_create_linear(),这意味着 *no* irq 描述符将被分配。
+irq_domain_add_linear_fwnode(),这意味着 *no* irq 描述符将被分配。
一个简单域的典型用例是,irqchip供应商同时支持动态和静态IRQ分配。
@@ -170,8 +170,8 @@ irq_domain_create_linear(),这意味着 *no* irq 描述符将被分配。
irq_find_mapping()之前调用irq_create_mapping()是非常重要的,因为后者实际上
将用于静态IRQ分配情况。
-irq_domain_add_simple_of_node()和irq_domain_create_simple()以及
-irq_domain_add_legacy_of_node()和irq_domain_create_legacy()在功能上是等价的,只
+irq_domain_add_simple_of_node()和irq_domain_add_simple_fwnode()以及
+irq_domain_add_legacy_of_node()和irq_domain_add_legacy_fwnode()在功能上是等价的,只
是第一个参数不同--前者接受Open Firmware特定的 'struct device_node' ,而后者
接受一个更通用的抽象 'struct fwnode_handle' 。
diff --git a/arch/arm64/kvm/arch_timer.c b/arch/arm64/kvm/arch_timer.c
index d3d243366536..4daf03604fca 100644
--- a/arch/arm64/kvm/arch_timer.c
+++ b/arch/arm64/kvm/arch_timer.c
@@ -1445,7 +1445,7 @@ static int kvm_irq_init(struct arch_timer_kvm_info *info)
/* Assume both vtimer and ptimer in the same parent */
data = irq_get_irq_data(host_vtimer_irq);
- domain = irq_domain_create_hierarchy(data->domain, 0,
+ domain = irq_domain_add_hierarchy_fwnode(data->domain, 0,
NR_KVM_TIMERS, fwnode,
&timer_domain_ops, NULL);
if (!domain) {
diff --git a/arch/mips/pci/pci-xtalk-bridge.c b/arch/mips/pci/pci-xtalk-bridge.c
index e00c38620d14..a6cf694c9c4a 100644
--- a/arch/mips/pci/pci-xtalk-bridge.c
+++ b/arch/mips/pci/pci-xtalk-bridge.c
@@ -626,7 +626,7 @@ static int bridge_probe(struct platform_device *pdev)
fn = irq_domain_alloc_named_fwnode("BRIDGE");
if (!fn)
return -ENOMEM;
- domain = irq_domain_create_hierarchy(parent, 0, 8, fn,
+ domain = irq_domain_add_hierarchy_fwnode(parent, 0, 8, fn,
&bridge_domain_ops, NULL);
if (!domain) {
irq_domain_free_fwnode(fn);
diff --git a/arch/mips/sgi-ip27/ip27-irq.c b/arch/mips/sgi-ip27/ip27-irq.c
index 288d4d17eddd..7cc0332bdecd 100644
--- a/arch/mips/sgi-ip27/ip27-irq.c
+++ b/arch/mips/sgi-ip27/ip27-irq.c
@@ -292,7 +292,7 @@ void __init arch_init_irq(void)
if (WARN_ON(fn == NULL))
return;
- domain = irq_domain_create_linear(fn, IP27_HUB_IRQ_COUNT,
+ domain = irq_domain_add_linear_fwnode(fn, IP27_HUB_IRQ_COUNT,
&hub_domain_ops, NULL);
if (WARN_ON(domain == NULL))
return;
diff --git a/arch/mips/sgi-ip30/ip30-irq.c b/arch/mips/sgi-ip30/ip30-irq.c
index 9fb905e2cf14..65150bdfaf3d 100644
--- a/arch/mips/sgi-ip30/ip30-irq.c
+++ b/arch/mips/sgi-ip30/ip30-irq.c
@@ -307,7 +307,7 @@ void __init arch_init_irq(void)
WARN_ON(fn == NULL);
if (!fn)
return;
- domain = irq_domain_create_linear(fn, HEART_NUM_IRQS,
+ domain = irq_domain_add_linear_fwnode(fn, HEART_NUM_IRQS,
&heart_domain_ops, NULL);
WARN_ON(domain == NULL);
if (!domain)
diff --git a/arch/powerpc/platforms/powernv/pci-ioda.c b/arch/powerpc/platforms/powernv/pci-ioda.c
index 25fba487e7b6..3a13d4aff7e1 100644
--- a/arch/powerpc/platforms/powernv/pci-ioda.c
+++ b/arch/powerpc/platforms/powernv/pci-ioda.c
@@ -1930,7 +1930,7 @@ static int __init pnv_msi_allocate_domains(struct pci_controller *hose, unsigned
if (!hose->fwnode)
return -ENOMEM;
- hose->dev_domain = irq_domain_create_hierarchy(parent, 0, count,
+ hose->dev_domain = irq_domain_add_hierarchy_fwnode(parent, 0, count,
hose->fwnode,
&pnv_irq_domain_ops, hose);
if (!hose->dev_domain) {
diff --git a/arch/powerpc/platforms/pseries/msi.c b/arch/powerpc/platforms/pseries/msi.c
index 5b191f70c088..ef23e17b77ab 100644
--- a/arch/powerpc/platforms/pseries/msi.c
+++ b/arch/powerpc/platforms/pseries/msi.c
@@ -618,7 +618,7 @@ static int __pseries_msi_allocate_domains(struct pci_controller *phb,
if (!phb->fwnode)
return -ENOMEM;
- phb->dev_domain = irq_domain_create_hierarchy(parent, 0, count,
+ phb->dev_domain = irq_domain_add_hierarchy_fwnode(parent, 0, count,
phb->fwnode,
&pseries_irq_domain_ops, phb);
if (!phb->dev_domain) {
diff --git a/arch/powerpc/sysdev/xics/xics-common.c b/arch/powerpc/sysdev/xics/xics-common.c
index c3fa539a9898..92e8a75845a1 100644
--- a/arch/powerpc/sysdev/xics/xics-common.c
+++ b/arch/powerpc/sysdev/xics/xics-common.c
@@ -466,7 +466,7 @@ static int __init xics_allocate_domain(void)
if (!fn)
return -ENOMEM;
- xics_host = irq_domain_create_tree(fn, &xics_host_ops, NULL);
+ xics_host = irq_domain_add_tree_fwnode(fn, &xics_host_ops, NULL);
if (!xics_host) {
irq_domain_free_fwnode(fn);
return -ENOMEM;
diff --git a/arch/powerpc/sysdev/xive/common.c b/arch/powerpc/sysdev/xive/common.c
index d4e28b581b4a..3aaad8aa7f4c 100644
--- a/arch/powerpc/sysdev/xive/common.c
+++ b/arch/powerpc/sysdev/xive/common.c
@@ -1141,7 +1141,7 @@ static int __init xive_init_ipis(void)
if (!fwnode)
goto out;
- ipi_domain = irq_domain_create_linear(fwnode, nr_node_ids,
+ ipi_domain = irq_domain_add_linear_fwnode(fwnode, nr_node_ids,
&xive_ipi_irq_domain_ops, NULL);
if (!ipi_domain)
goto out_free_fwnode;
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
index be89493e0e5c..0d93c49e54c5 100644
--- a/arch/x86/kernel/apic/io_apic.c
+++ b/arch/x86/kernel/apic/io_apic.c
@@ -2243,7 +2243,7 @@ static int mp_irqdomain_create(int ioapic)
return -ENODEV;
}
- ip->irqdomain = irq_domain_create_hierarchy(parent, 0, hwirqs, fn, cfg->ops,
+ ip->irqdomain = irq_domain_add_hierarchy_fwnode(parent, 0, hwirqs, fn, cfg->ops,
(void *)(long)ioapic);
if (!ip->irqdomain) {
/* Release fw handle if it was allocated above */
diff --git a/arch/x86/kernel/apic/vector.c b/arch/x86/kernel/apic/vector.c
index 38e53cb18dd6..2630d8f4a050 100644
--- a/arch/x86/kernel/apic/vector.c
+++ b/arch/x86/kernel/apic/vector.c
@@ -796,7 +796,7 @@ int __init arch_early_irq_init(void)
fn = irq_domain_alloc_named_fwnode("VECTOR");
BUG_ON(!fn);
- x86_vector_domain = irq_domain_create_tree(fn, &x86_vector_domain_ops,
+ x86_vector_domain = irq_domain_add_tree_fwnode(fn, &x86_vector_domain_ops,
NULL);
BUG_ON(x86_vector_domain == NULL);
irq_set_default_domain(x86_vector_domain);
diff --git a/arch/x86/platform/uv/uv_irq.c b/arch/x86/platform/uv/uv_irq.c
index a379501b7a69..a28a686db118 100644
--- a/arch/x86/platform/uv/uv_irq.c
+++ b/arch/x86/platform/uv/uv_irq.c
@@ -166,7 +166,7 @@ static struct irq_domain *uv_get_irq_domain(void)
if (!fn)
goto out;
- uv_domain = irq_domain_create_hierarchy(x86_vector_domain, 0, 0, fn,
+ uv_domain = irq_domain_add_hierarchy_fwnode(x86_vector_domain, 0, 0, fn,
&uv_domain_ops, NULL);
if (!uv_domain)
irq_domain_free_fwnode(fn);
diff --git a/drivers/acpi/irq.c b/drivers/acpi/irq.c
index 1687483ff319..9b766b9c9147 100644
--- a/drivers/acpi/irq.c
+++ b/drivers/acpi/irq.c
@@ -350,7 +350,7 @@ struct irq_domain *acpi_irq_create_hierarchy(unsigned int flags,
if (!d)
return NULL;
- return irq_domain_create_hierarchy(d, flags, size, fwnode, ops,
+ return irq_domain_add_hierarchy_fwnode(d, flags, size, fwnode, ops,
host_data);
}
EXPORT_SYMBOL_GPL(acpi_irq_create_hierarchy);
diff --git a/drivers/gpio/gpio-bcm-kona.c b/drivers/gpio/gpio-bcm-kona.c
index 5321ef98f442..7216439740d0 100644
--- a/drivers/gpio/gpio-bcm-kona.c
+++ b/drivers/gpio/gpio-bcm-kona.c
@@ -593,7 +593,7 @@ static int bcm_kona_gpio_probe(struct platform_device *pdev)
chip->parent = dev;
chip->ngpio = kona_gpio->num_bank * GPIO_PER_BANK;
- kona_gpio->irq_domain = irq_domain_create_linear(dev_fwnode(dev),
+ kona_gpio->irq_domain = irq_domain_add_linear_fwnode(dev_fwnode(dev),
chip->ngpio,
&bcm_kona_irq_ops,
kona_gpio);
diff --git a/drivers/gpio/gpio-mockup.c b/drivers/gpio/gpio-mockup.c
index d39c6618bade..cb476d3330ba 100644
--- a/drivers/gpio/gpio-mockup.c
+++ b/drivers/gpio/gpio-mockup.c
@@ -464,7 +464,7 @@ static int gpio_mockup_probe(struct platform_device *pdev)
for (i = 0; i < gc->ngpio; i++)
chip->lines[i].dir = GPIO_LINE_DIRECTION_IN;
- chip->irq_sim_domain = devm_irq_domain_create_sim(dev, NULL,
+ chip->irq_sim_domain = devm_irq_domain_add_sim_fwnode(dev, NULL,
gc->ngpio);
if (IS_ERR(chip->irq_sim_domain))
return PTR_ERR(chip->irq_sim_domain);
diff --git a/drivers/gpio/gpio-mpc8xxx.c b/drivers/gpio/gpio-mpc8xxx.c
index 0cd4c36ae8aa..c76bd9def691 100644
--- a/drivers/gpio/gpio-mpc8xxx.c
+++ b/drivers/gpio/gpio-mpc8xxx.c
@@ -388,7 +388,7 @@ static int mpc8xxx_probe(struct platform_device *pdev)
if (mpc8xxx_gc->irqn < 0)
return mpc8xxx_gc->irqn;
- mpc8xxx_gc->irq = irq_domain_create_linear(fwnode,
+ mpc8xxx_gc->irq = irq_domain_add_linear_fwnode(fwnode,
MPC8XXX_GPIO_PINS,
&mpc8xxx_gpio_irq_ops,
mpc8xxx_gc);
diff --git a/drivers/gpio/gpio-sim.c b/drivers/gpio/gpio-sim.c
index a086087ada17..68baa759bb45 100644
--- a/drivers/gpio/gpio-sim.c
+++ b/drivers/gpio/gpio-sim.c
@@ -459,7 +459,7 @@ static int gpio_sim_add_bank(struct fwnode_handle *swnode, struct device *dev)
if (!chip->pull_map)
return -ENOMEM;
- chip->irq_sim = devm_irq_domain_create_sim_full(dev, swnode, num_lines,
+ chip->irq_sim = devm_irq_domain_add_sim_full_fwnode(dev, swnode, num_lines,
&gpio_sim_irq_sim_ops,
chip);
if (IS_ERR(chip->irq_sim))
diff --git a/drivers/gpio/gpio-uniphier.c b/drivers/gpio/gpio-uniphier.c
index d738da8718f9..3a4ba504a2ad 100644
--- a/drivers/gpio/gpio-uniphier.c
+++ b/drivers/gpio/gpio-uniphier.c
@@ -402,7 +402,7 @@ static int uniphier_gpio_probe(struct platform_device *pdev)
if (ret)
return ret;
- priv->domain = irq_domain_create_hierarchy(
+ priv->domain = irq_domain_add_hierarchy_fwnode(
parent_domain, 0,
UNIPHIER_GPIO_IRQ_MAX_NUM,
dev_fwnode(dev),
diff --git a/drivers/gpio/gpio-xgene-sb.c b/drivers/gpio/gpio-xgene-sb.c
index 48b829733b15..0c0071686c3e 100644
--- a/drivers/gpio/gpio-xgene-sb.c
+++ b/drivers/gpio/gpio-xgene-sb.c
@@ -272,7 +272,7 @@ static int xgene_gpio_sb_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, priv);
- priv->irq_domain = irq_domain_create_hierarchy(parent_domain,
+ priv->irq_domain = irq_domain_add_hierarchy_fwnode(parent_domain,
0, priv->nirq, pdev->dev.fwnode,
&xgene_gpio_sb_domain_ops, priv);
if (!priv->irq_domain)
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index 679ed764cb14..3706effff656 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -1623,7 +1623,7 @@ static struct irq_domain *gpiochip_hierarchy_create_domain(struct gpio_chip *gc)
gpiochip_hierarchy_setup_domain_ops(&gc->irq.child_irq_domain_ops);
- domain = irq_domain_create_hierarchy(
+ domain = irq_domain_add_hierarchy_fwnode(
gc->irq.parent_domain,
0,
gc->ngpio,
@@ -1766,7 +1766,7 @@ static struct irq_domain *gpiochip_simple_create_domain(struct gpio_chip *gc)
struct fwnode_handle *fwnode = dev_fwnode(&gc->gpiodev->dev);
struct irq_domain *domain;
- domain = irq_domain_create_simple(fwnode, gc->ngpio, gc->irq.first,
+ domain = irq_domain_add_simple_fwnode(fwnode, gc->ngpio, gc->irq.first,
&gpiochip_domain_ops, gc);
if (!domain)
return ERR_PTR(-EINVAL);
diff --git a/drivers/hid/hid-rmi.c b/drivers/hid/hid-rmi.c
index d4af17fdba46..691362913db1 100644
--- a/drivers/hid/hid-rmi.c
+++ b/drivers/hid/hid-rmi.c
@@ -621,7 +621,7 @@ static int rmi_setup_irq_domain(struct hid_device *hdev)
struct rmi_data *hdata = hid_get_drvdata(hdev);
int ret;
- hdata->domain = irq_domain_create_linear(hdev->dev.fwnode, 1,
+ hdata->domain = irq_domain_add_linear_fwnode(hdev->dev.fwnode, 1,
&rmi_irq_ops, hdata);
if (!hdata->domain)
return -ENOMEM;
diff --git a/drivers/i2c/i2c-core-base.c b/drivers/i2c/i2c-core-base.c
index b4d8771d80a8..4ac60fd7be75 100644
--- a/drivers/i2c/i2c-core-base.c
+++ b/drivers/i2c/i2c-core-base.c
@@ -1463,7 +1463,7 @@ static int i2c_setup_host_notify_irq_domain(struct i2c_adapter *adap)
if (!i2c_check_functionality(adap, I2C_FUNC_SMBUS_HOST_NOTIFY))
return 0;
- domain = irq_domain_create_linear(adap->dev.parent->fwnode,
+ domain = irq_domain_add_linear_fwnode(adap->dev.parent->fwnode,
I2C_ADDR_7BITS_COUNT,
&i2c_host_notify_irq_ops, adap);
if (!domain)
diff --git a/drivers/iio/dummy/iio_dummy_evgen.c b/drivers/iio/dummy/iio_dummy_evgen.c
index 16d3f144dda0..836ff5ea38b5 100644
--- a/drivers/iio/dummy/iio_dummy_evgen.c
+++ b/drivers/iio/dummy/iio_dummy_evgen.c
@@ -51,7 +51,7 @@ static int iio_dummy_evgen_create(void)
if (!iio_evgen)
return -ENOMEM;
- iio_evgen->irq_sim_domain = irq_domain_create_sim(NULL,
+ iio_evgen->irq_sim_domain = irq_domain_add_sim_fwnode(NULL,
IIO_EVENTGEN_NO);
if (IS_ERR(iio_evgen->irq_sim_domain)) {
ret = PTR_ERR(iio_evgen->irq_sim_domain);
diff --git a/drivers/input/rmi4/rmi_driver.c b/drivers/input/rmi4/rmi_driver.c
index 2168b6cd7167..5bec561d795d 100644
--- a/drivers/input/rmi4/rmi_driver.c
+++ b/drivers/input/rmi4/rmi_driver.c
@@ -1036,7 +1036,7 @@ int rmi_probe_interrupts(struct rmi_driver_data *data)
dev_warn(dev, "Device in bootloader mode.\n");
/* Allocate and register a linear revmap irq_domain */
- data->irqdomain = irq_domain_create_linear(fwnode, irq_count,
+ data->irqdomain = irq_domain_add_linear_fwnode(fwnode, irq_count,
&irq_domain_simple_ops,
data);
if (!data->irqdomain) {
diff --git a/drivers/iommu/amd/init.c b/drivers/iommu/amd/init.c
index 9db8fd1275be..a9ebb264cc0e 100644
--- a/drivers/iommu/amd/init.c
+++ b/drivers/iommu/amd/init.c
@@ -2376,7 +2376,7 @@ static struct irq_domain *iommu_get_irqdomain(void)
if (!fn)
return NULL;
- iommu_irqdomain = irq_domain_create_hierarchy(x86_vector_domain, 0, 0,
+ iommu_irqdomain = irq_domain_add_hierarchy_fwnode(x86_vector_domain, 0, 0,
fn, &intcapxt_domain_ops,
NULL);
if (!iommu_irqdomain)
diff --git a/drivers/iommu/amd/iommu.c b/drivers/iommu/amd/iommu.c
index 20177e18eb0d..041e41257118 100644
--- a/drivers/iommu/amd/iommu.c
+++ b/drivers/iommu/amd/iommu.c
@@ -4018,7 +4018,7 @@ int amd_iommu_create_irq_domain(struct amd_iommu *iommu)
fn = irq_domain_alloc_named_id_fwnode("AMD-IR", iommu->index);
if (!fn)
return -ENOMEM;
- iommu->ir_domain = irq_domain_create_hierarchy(arch_get_ir_parent_domain(), 0, 0,
+ iommu->ir_domain = irq_domain_add_hierarchy_fwnode(arch_get_ir_parent_domain(), 0, 0,
fn, &amd_ir_domain_ops, iommu);
if (!iommu->ir_domain) {
irq_domain_free_fwnode(fn);
diff --git a/drivers/iommu/hyperv-iommu.c b/drivers/iommu/hyperv-iommu.c
index 2a86aa5d54c6..61060b0c4d64 100644
--- a/drivers/iommu/hyperv-iommu.c
+++ b/drivers/iommu/hyperv-iommu.c
@@ -143,7 +143,7 @@ static int __init hyperv_prepare_irq_remapping(void)
return -ENOMEM;
ioapic_ir_domain =
- irq_domain_create_hierarchy(arch_get_ir_parent_domain(),
+ irq_domain_add_hierarchy_fwnode(arch_get_ir_parent_domain(),
0, IOAPIC_REMAPPING_ENTRY, fn, ops, NULL);
if (!ioapic_ir_domain) {
diff --git a/drivers/iommu/intel/irq_remapping.c b/drivers/iommu/intel/irq_remapping.c
index 4431543bcfe3..8d840bd2d8a5 100644
--- a/drivers/iommu/intel/irq_remapping.c
+++ b/drivers/iommu/intel/irq_remapping.c
@@ -557,7 +557,7 @@ static int intel_setup_irq_remapping(struct intel_iommu *iommu)
goto out_free_bitmap;
iommu->ir_domain =
- irq_domain_create_hierarchy(arch_get_ir_parent_domain(),
+ irq_domain_add_hierarchy_fwnode(arch_get_ir_parent_domain(),
0, INTR_REMAP_TABLE_ENTRIES,
fn, &intel_ir_domain_ops,
iommu);
diff --git a/drivers/irqchip/irq-apple-aic.c b/drivers/irqchip/irq-apple-aic.c
index fb67815dcb3d..728b12e30cb2 100644
--- a/drivers/irqchip/irq-apple-aic.c
+++ b/drivers/irqchip/irq-apple-aic.c
@@ -1013,7 +1013,7 @@ static int __init aic_of_ic_init(struct device_node *node, struct device_node *p
irqc->info.die_stride = off - start_off;
- irqc->hw_domain = irq_domain_create_tree(of_fwnode_handle(node),
+ irqc->hw_domain = irq_domain_add_tree_fwnode(of_fwnode_handle(node),
&aic_irq_domain_ops, irqc);
if (WARN_ON(!irqc->hw_domain))
goto err_unmap;
diff --git a/drivers/irqchip/irq-armada-370-xp.c b/drivers/irqchip/irq-armada-370-xp.c
index 89c2abd2342d..f6fbfab5ffb7 100644
--- a/drivers/irqchip/irq-armada-370-xp.c
+++ b/drivers/irqchip/irq-armada-370-xp.c
@@ -492,7 +492,7 @@ static int __init mpic_ipi_init(struct mpic *mpic, struct device_node *node)
{
int base_ipi;
- mpic->ipi_domain = irq_domain_create_linear(of_fwnode_handle(node), IPI_DOORBELL_NR,
+ mpic->ipi_domain = irq_domain_add_linear_fwnode(of_fwnode_handle(node), IPI_DOORBELL_NR,
&mpic_ipi_domain_ops, mpic);
if (WARN_ON(!mpic->ipi_domain))
return -ENOMEM;
diff --git a/drivers/irqchip/irq-bcm2836.c b/drivers/irqchip/irq-bcm2836.c
index aedd69494b9f..e1ab5cea7abe 100644
--- a/drivers/irqchip/irq-bcm2836.c
+++ b/drivers/irqchip/irq-bcm2836.c
@@ -262,7 +262,7 @@ static void __init bcm2836_arm_irqchip_smp_init(void)
if (WARN_ON(mux_irq <= 0))
return;
- ipi_domain = irq_domain_create_linear(intc.domain->fwnode,
+ ipi_domain = irq_domain_add_linear_fwnode(intc.domain->fwnode,
BITS_PER_MBOX, &ipi_domain_ops,
NULL);
if (WARN_ON(!ipi_domain))
diff --git a/drivers/irqchip/irq-gic-v2m.c b/drivers/irqchip/irq-gic-v2m.c
index be35c5349986..b5fb2b7941ea 100644
--- a/drivers/irqchip/irq-gic-v2m.c
+++ b/drivers/irqchip/irq-gic-v2m.c
@@ -270,7 +270,7 @@ static __init int gicv2m_allocate_domains(struct irq_domain *parent)
if (!v2m)
return 0;
- inner_domain = irq_domain_create_hierarchy(parent, 0, 0, v2m->fwnode,
+ inner_domain = irq_domain_add_hierarchy_fwnode(parent, 0, 0, v2m->fwnode,
&gicv2m_domain_ops, v2m);
if (!inner_domain) {
pr_err("Failed to create GICv2m domain\n");
diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
index 92244cfa0464..dcc98eb5bd5b 100644
--- a/drivers/irqchip/irq-gic-v3-its.c
+++ b/drivers/irqchip/irq-gic-v3-its.c
@@ -5114,7 +5114,7 @@ static int its_init_domain(struct its_node *its)
info->ops = &its_msi_domain_ops;
info->data = its;
- inner_domain = irq_domain_create_hierarchy(its_parent,
+ inner_domain = irq_domain_add_hierarchy_fwnode(its_parent,
its->msi_domain_flags, 0,
its->fwnode_handle, &its_domain_ops,
info);
diff --git a/drivers/irqchip/irq-gic-v3-mbi.c b/drivers/irqchip/irq-gic-v3-mbi.c
index 3fe870f8ee17..34456871a3fb 100644
--- a/drivers/irqchip/irq-gic-v3-mbi.c
+++ b/drivers/irqchip/irq-gic-v3-mbi.c
@@ -211,7 +211,7 @@ static int mbi_allocate_domain(struct irq_domain *parent)
{
struct irq_domain *nexus_domain;
- nexus_domain = irq_domain_create_hierarchy(parent, 0, 0, parent->fwnode,
+ nexus_domain = irq_domain_add_hierarchy_fwnode(parent, 0, 0, parent->fwnode,
&mbi_domain_ops, NULL);
if (!nexus_domain)
return -ENOMEM;
diff --git a/drivers/irqchip/irq-gic-v3.c b/drivers/irqchip/irq-gic-v3.c
index 7e444f509aff..8c7e71e00f92 100644
--- a/drivers/irqchip/irq-gic-v3.c
+++ b/drivers/irqchip/irq-gic-v3.c
@@ -2068,7 +2068,7 @@ static int __init gic_init_bases(phys_addr_t dist_phys_base,
if (!(gic_data.flags & FLAGS_WORKAROUND_CAVIUM_ERRATUM_38539))
gic_data.rdists.gicd_typer2 = readl_relaxed(gic_data.dist_base + GICD_TYPER2);
- gic_data.domain = irq_domain_create_tree(handle, &gic_irq_domain_ops,
+ gic_data.domain = irq_domain_add_tree_fwnode(handle, &gic_irq_domain_ops,
&gic_data);
gic_data.rdists.rdist = alloc_percpu(typeof(*gic_data.rdists.rdist));
if (!static_branch_unlikely(&gic_nvidia_t241_erratum)) {
diff --git a/drivers/irqchip/irq-gic-v4.c b/drivers/irqchip/irq-gic-v4.c
index 58c28895f8c4..0f576d2649e3 100644
--- a/drivers/irqchip/irq-gic-v4.c
+++ b/drivers/irqchip/irq-gic-v4.c
@@ -135,7 +135,7 @@ static int its_alloc_vcpu_sgis(struct its_vpe *vpe, int idx)
kfree(name);
name = NULL;
- vpe->sgi_domain = irq_domain_create_linear(vpe->fwnode, 16,
+ vpe->sgi_domain = irq_domain_add_linear_fwnode(vpe->fwnode, 16,
sgi_domain_ops, vpe);
if (!vpe->sgi_domain)
goto err;
@@ -164,7 +164,7 @@ int its_alloc_vcpu_irqs(struct its_vm *vm)
if (!vm->fwnode)
goto err;
- vm->domain = irq_domain_create_hierarchy(gic_domain, 0, vm->nr_vpes,
+ vm->domain = irq_domain_add_hierarchy_fwnode(gic_domain, 0, vm->nr_vpes,
vm->fwnode, vpe_domain_ops,
vm);
if (!vm->domain)
diff --git a/drivers/irqchip/irq-gic.c b/drivers/irqchip/irq-gic.c
index 6503573557fd..ff31eff55cf5 100644
--- a/drivers/irqchip/irq-gic.c
+++ b/drivers/irqchip/irq-gic.c
@@ -1207,7 +1207,7 @@ static int gic_init_bases(struct gic_chip_data *gic,
gic_irqs = 1020;
gic->gic_irqs = gic_irqs;
- gic->domain = irq_domain_create_linear(handle, gic_irqs,
+ gic->domain = irq_domain_add_linear_fwnode(handle, gic_irqs,
&gic_irq_domain_hierarchy_ops,
gic);
if (WARN_ON(!gic->domain)) {
diff --git a/drivers/irqchip/irq-imx-mu-msi.c b/drivers/irqchip/irq-imx-mu-msi.c
index 4342a21de1eb..b160abc97db9 100644
--- a/drivers/irqchip/irq-imx-mu-msi.c
+++ b/drivers/irqchip/irq-imx-mu-msi.c
@@ -226,7 +226,7 @@ static int imx_mu_msi_domains_init(struct imx_mu_msi *msi_data, struct device *d
struct irq_domain *parent;
/* Initialize MSI domain parent */
- parent = irq_domain_create_linear(fwnodes, IMX_MU_CHANS,
+ parent = irq_domain_add_linear_fwnode(fwnodes, IMX_MU_CHANS,
&imx_mu_msi_domain_ops, msi_data);
if (!parent) {
dev_err(dev, "failed to create IRQ domain\n");
diff --git a/drivers/irqchip/irq-ixp4xx.c b/drivers/irqchip/irq-ixp4xx.c
index a9a5a52b818a..54af44fde25c 100644
--- a/drivers/irqchip/irq-ixp4xx.c
+++ b/drivers/irqchip/irq-ixp4xx.c
@@ -234,7 +234,7 @@ static int __init ixp4xx_irq_setup(struct ixp4xx_irq *ixi,
ixi->irqchip.irq_unmask = ixp4xx_irq_unmask;
ixi->irqchip.irq_set_type = ixp4xx_set_irq_type;
- ixi->domain = irq_domain_create_linear(fwnode, nr_irqs,
+ ixi->domain = irq_domain_add_linear_fwnode(fwnode, nr_irqs,
&ixp4xx_irqdomain_ops,
ixi);
if (!ixi->domain) {
diff --git a/drivers/irqchip/irq-loongarch-avec.c b/drivers/irqchip/irq-loongarch-avec.c
index 0f6e465dd309..92937ae60ab2 100644
--- a/drivers/irqchip/irq-loongarch-avec.c
+++ b/drivers/irqchip/irq-loongarch-avec.c
@@ -350,7 +350,7 @@ static int __init avecintc_init(struct irq_domain *parent)
goto out;
}
- loongarch_avec.domain = irq_domain_create_tree(loongarch_avec.fwnode,
+ loongarch_avec.domain = irq_domain_add_tree_fwnode(loongarch_avec.fwnode,
&avecintc_domain_ops, NULL);
if (!loongarch_avec.domain) {
pr_err("Unable to create IRQ domain\n");
diff --git a/drivers/irqchip/irq-loongarch-cpu.c b/drivers/irqchip/irq-loongarch-cpu.c
index 950bc087e388..9e8b2c6a5d0b 100644
--- a/drivers/irqchip/irq-loongarch-cpu.c
+++ b/drivers/irqchip/irq-loongarch-cpu.c
@@ -102,7 +102,7 @@ static int __init cpuintc_of_init(struct device_node *of_node,
{
cpuintc_handle = of_fwnode_handle(of_node);
- irq_domain = irq_domain_create_linear(cpuintc_handle, EXCCODE_INT_NUM,
+ irq_domain = irq_domain_add_linear_fwnode(cpuintc_handle, EXCCODE_INT_NUM,
&loongarch_cpu_intc_irq_domain_ops, NULL);
if (!irq_domain)
panic("Failed to add irqdomain for loongarch CPU");
@@ -161,7 +161,7 @@ static int __init cpuintc_acpi_init(union acpi_subtable_headers *header,
clear_csr_estat(ESTATF_IP);
cpuintc_handle = irq_domain_alloc_named_fwnode("CPUINTC");
- irq_domain = irq_domain_create_linear(cpuintc_handle, EXCCODE_INT_NUM,
+ irq_domain = irq_domain_add_linear_fwnode(cpuintc_handle, EXCCODE_INT_NUM,
&loongarch_cpu_intc_irq_domain_ops, NULL);
if (!irq_domain)
diff --git a/drivers/irqchip/irq-loongson-eiointc.c b/drivers/irqchip/irq-loongson-eiointc.c
index b2860eb2d32c..cb04d233df6a 100644
--- a/drivers/irqchip/irq-loongson-eiointc.c
+++ b/drivers/irqchip/irq-loongson-eiointc.c
@@ -438,7 +438,7 @@ static int __init eiointc_init(struct eiointc_priv *priv, int parent_irq,
}
}
- priv->eiointc_domain = irq_domain_create_linear(priv->domain_handle,
+ priv->eiointc_domain = irq_domain_add_linear_fwnode(priv->domain_handle,
priv->vec_count,
&eiointc_domain_ops,
priv);
diff --git a/drivers/irqchip/irq-loongson-htvec.c b/drivers/irqchip/irq-loongson-htvec.c
index d8558eb35044..6d55941c188a 100644
--- a/drivers/irqchip/irq-loongson-htvec.c
+++ b/drivers/irqchip/irq-loongson-htvec.c
@@ -197,7 +197,7 @@ static int htvec_init(phys_addr_t addr, unsigned long size,
raw_spin_lock_init(&priv->htvec_lock);
/* Setup IRQ domain */
- priv->htvec_domain = irq_domain_create_linear(domain_handle,
+ priv->htvec_domain = irq_domain_add_linear_fwnode(domain_handle,
(VEC_COUNT_PER_REG * priv->num_parents),
&htvec_domain_ops, priv);
if (!priv->htvec_domain) {
diff --git a/drivers/irqchip/irq-loongson-liointc.c b/drivers/irqchip/irq-loongson-liointc.c
index 95cade56e0be..6d0d162f19a5 100644
--- a/drivers/irqchip/irq-loongson-liointc.c
+++ b/drivers/irqchip/irq-loongson-liointc.c
@@ -241,10 +241,10 @@ static int liointc_init(phys_addr_t addr, unsigned long size, int revision,
/* Setup IRQ domain */
if (!acpi_disabled)
- domain = irq_domain_create_linear(domain_handle, LIOINTC_CHIP_IRQ,
+ domain = irq_domain_add_linear_fwnode(domain_handle, LIOINTC_CHIP_IRQ,
&acpi_irq_gc_ops, priv);
else
- domain = irq_domain_create_linear(domain_handle, LIOINTC_CHIP_IRQ,
+ domain = irq_domain_add_linear_fwnode(domain_handle, LIOINTC_CHIP_IRQ,
&irq_generic_chip_ops, priv);
if (!domain) {
pr_err("loongson-liointc: cannot add IRQ domain\n");
diff --git a/drivers/irqchip/irq-loongson-pch-lpc.c b/drivers/irqchip/irq-loongson-pch-lpc.c
index 2d4c3ec128b8..b772cbf90a7e 100644
--- a/drivers/irqchip/irq-loongson-pch-lpc.c
+++ b/drivers/irqchip/irq-loongson-pch-lpc.c
@@ -200,7 +200,7 @@ int __init pch_lpc_acpi_init(struct irq_domain *parent,
goto iounmap_base;
}
- priv->lpc_domain = irq_domain_create_linear(irq_handle, LPC_COUNT,
+ priv->lpc_domain = irq_domain_add_linear_fwnode(irq_handle, LPC_COUNT,
&pch_lpc_domain_ops, priv);
if (!priv->lpc_domain) {
pr_err("Failed to create IRQ domain\n");
diff --git a/drivers/irqchip/irq-loongson-pch-msi.c b/drivers/irqchip/irq-loongson-pch-msi.c
index 6205d34c6d49..c7084d8e7a20 100644
--- a/drivers/irqchip/irq-loongson-pch-msi.c
+++ b/drivers/irqchip/irq-loongson-pch-msi.c
@@ -158,7 +158,7 @@ static int pch_msi_init_domains(struct pch_msi_data *priv,
{
struct irq_domain *middle_domain;
- middle_domain = irq_domain_create_hierarchy(parent, 0, priv->num_irqs,
+ middle_domain = irq_domain_add_hierarchy_fwnode(parent, 0, priv->num_irqs,
domain_handle,
&pch_msi_middle_domain_ops,
priv);
diff --git a/drivers/irqchip/irq-loongson-pch-pic.c b/drivers/irqchip/irq-loongson-pch-pic.c
index 62e6bf3a0611..7bf24fd749fb 100644
--- a/drivers/irqchip/irq-loongson-pch-pic.c
+++ b/drivers/irqchip/irq-loongson-pch-pic.c
@@ -342,7 +342,7 @@ static int pch_pic_init(phys_addr_t addr, unsigned long size, int vec_base,
priv->vec_count = ((readq(priv->base) >> 48) & 0xff) + 1;
priv->gsi_base = gsi_base;
- priv->pic_domain = irq_domain_create_hierarchy(parent_domain, 0,
+ priv->pic_domain = irq_domain_add_hierarchy_fwnode(parent_domain, 0,
priv->vec_count, domain_handle,
&pch_pic_domain_ops, priv);
diff --git a/drivers/irqchip/irq-meson-gpio.c b/drivers/irqchip/irq-meson-gpio.c
index 8620c7fb051e..3d2e6e65e341 100644
--- a/drivers/irqchip/irq-meson-gpio.c
+++ b/drivers/irqchip/irq-meson-gpio.c
@@ -579,7 +579,7 @@ static int meson_gpio_irq_of_init(struct device_node *node, struct device_node *
if (ret)
goto free_channel_irqs;
- domain = irq_domain_create_hierarchy(parent_domain, 0,
+ domain = irq_domain_add_hierarchy_fwnode(parent_domain, 0,
ctl->params->nr_hwirq,
of_fwnode_handle(node),
&meson_gpio_irq_domain_ops,
diff --git a/drivers/irqchip/irq-mvebu-gicp.c b/drivers/irqchip/irq-mvebu-gicp.c
index fa0082f4dd1d..dd086cf81192 100644
--- a/drivers/irqchip/irq-mvebu-gicp.c
+++ b/drivers/irqchip/irq-mvebu-gicp.c
@@ -229,7 +229,7 @@ static int mvebu_gicp_probe(struct platform_device *pdev)
return -ENODEV;
}
- inner_domain = irq_domain_create_hierarchy(parent_domain, 0,
+ inner_domain = irq_domain_add_hierarchy_fwnode(parent_domain, 0,
gicp->spi_cnt,
of_fwnode_handle(node),
&gicp_domain_ops, gicp);
diff --git a/drivers/irqchip/irq-mvebu-odmi.c b/drivers/irqchip/irq-mvebu-odmi.c
index 8d01e641be9c..84c095e62b69 100644
--- a/drivers/irqchip/irq-mvebu-odmi.c
+++ b/drivers/irqchip/irq-mvebu-odmi.c
@@ -204,7 +204,7 @@ static int __init mvebu_odmi_init(struct device_node *node,
parent_domain = irq_find_host(parent);
- inner_domain = irq_domain_create_hierarchy(parent_domain, 0,
+ inner_domain = irq_domain_add_hierarchy_fwnode(parent_domain, 0,
odmis_count * NODMIS_PER_FRAME,
of_fwnode_handle(node),
&odmi_domain_ops, NULL);
diff --git a/drivers/irqchip/irq-mvebu-sei.c b/drivers/irqchip/irq-mvebu-sei.c
index 495fad4628ca..5bd28d57762a 100644
--- a/drivers/irqchip/irq-mvebu-sei.c
+++ b/drivers/irqchip/irq-mvebu-sei.c
@@ -401,7 +401,7 @@ static int mvebu_sei_probe(struct platform_device *pdev)
}
/* Create the root SEI domain */
- sei->sei_domain = irq_domain_create_linear(of_fwnode_handle(node),
+ sei->sei_domain = irq_domain_add_linear_fwnode(of_fwnode_handle(node),
(sei->caps->ap_range.size +
sei->caps->cp_range.size),
&mvebu_sei_domain_ops,
@@ -415,7 +415,7 @@ static int mvebu_sei_probe(struct platform_device *pdev)
irq_domain_update_bus_token(sei->sei_domain, DOMAIN_BUS_NEXUS);
/* Create the 'wired' domain */
- sei->ap_domain = irq_domain_create_hierarchy(sei->sei_domain, 0,
+ sei->ap_domain = irq_domain_add_hierarchy_fwnode(sei->sei_domain, 0,
sei->caps->ap_range.size,
of_fwnode_handle(node),
&mvebu_sei_ap_domain_ops,
@@ -429,7 +429,7 @@ static int mvebu_sei_probe(struct platform_device *pdev)
irq_domain_update_bus_token(sei->ap_domain, DOMAIN_BUS_WIRED);
/* Create the 'MSI' domain */
- sei->cp_domain = irq_domain_create_hierarchy(sei->sei_domain, 0,
+ sei->cp_domain = irq_domain_add_hierarchy_fwnode(sei->sei_domain, 0,
sei->caps->cp_range.size,
of_fwnode_handle(node),
&mvebu_sei_cp_domain_ops,
diff --git a/drivers/irqchip/irq-partition-percpu.c b/drivers/irqchip/irq-partition-percpu.c
index 8e76d2913e6b..fa1f69a65060 100644
--- a/drivers/irqchip/irq-partition-percpu.c
+++ b/drivers/irqchip/irq-partition-percpu.c
@@ -210,7 +210,7 @@ struct partition_desc *partition_create_desc(struct fwnode_handle *fwnode,
desc->ops.free = partition_domain_free;
desc->ops.alloc = partition_domain_alloc;
- d = irq_domain_create_linear(fwnode, nr_parts, &desc->ops, desc);
+ d = irq_domain_add_linear_fwnode(fwnode, nr_parts, &desc->ops, desc);
if (!d)
goto out;
desc->domain = d;
diff --git a/drivers/irqchip/irq-qcom-mpm.c b/drivers/irqchip/irq-qcom-mpm.c
index 00c770e367d0..e3b2b433ad09 100644
--- a/drivers/irqchip/irq-qcom-mpm.c
+++ b/drivers/irqchip/irq-qcom-mpm.c
@@ -445,7 +445,7 @@ static int qcom_mpm_init(struct device_node *np, struct device_node *parent)
goto free_mbox;
}
- priv->domain = irq_domain_create_hierarchy(parent_domain,
+ priv->domain = irq_domain_add_hierarchy_fwnode(parent_domain,
IRQ_DOMAIN_FLAG_QCOM_MPM_WAKEUP, pin_cnt,
of_fwnode_handle(np), &qcom_mpm_ops, priv);
if (!priv->domain) {
diff --git a/drivers/irqchip/irq-rda-intc.c b/drivers/irqchip/irq-rda-intc.c
index 9f0144a73777..ad3333337768 100644
--- a/drivers/irqchip/irq-rda-intc.c
+++ b/drivers/irqchip/irq-rda-intc.c
@@ -91,7 +91,7 @@ static int __init rda8810_intc_init(struct device_node *node,
/* Mask all interrupt sources */
writel_relaxed(RDA_IRQ_MASK_ALL, rda_intc_base + RDA_INTC_MASK_CLR);
- rda_irq_domain = irq_domain_create_linear(&node->fwnode, RDA_NR_IRQS,
+ rda_irq_domain = irq_domain_add_linear_fwnode(&node->fwnode, RDA_NR_IRQS,
&rda_irq_domain_ops,
rda_intc_base);
if (!rda_irq_domain) {
diff --git a/drivers/irqchip/irq-riscv-aplic-direct.c b/drivers/irqchip/irq-riscv-aplic-direct.c
index 7cd6b646774b..7e7b217f1ae7 100644
--- a/drivers/irqchip/irq-riscv-aplic-direct.c
+++ b/drivers/irqchip/irq-riscv-aplic-direct.c
@@ -314,7 +314,7 @@ int aplic_direct_setup(struct device *dev, void __iomem *regs)
aplic_init_hw_global(priv, false);
/* Create irq domain instance for the APLIC */
- direct->irqdomain = irq_domain_create_linear(dev->fwnode, priv->nr_irqs + 1,
+ direct->irqdomain = irq_domain_add_linear_fwnode(dev->fwnode, priv->nr_irqs + 1,
&aplic_direct_irqdomain_ops, priv);
if (!direct->irqdomain) {
dev_err(dev, "failed to create direct irq domain\n");
diff --git a/drivers/irqchip/irq-riscv-imsic-platform.c b/drivers/irqchip/irq-riscv-imsic-platform.c
index c708780e8760..3213a5f03db2 100644
--- a/drivers/irqchip/irq-riscv-imsic-platform.c
+++ b/drivers/irqchip/irq-riscv-imsic-platform.c
@@ -325,7 +325,7 @@ int imsic_irqdomain_init(void)
}
/* Create Base IRQ domain */
- imsic->base_domain = irq_domain_create_tree(imsic->fwnode,
+ imsic->base_domain = irq_domain_add_tree_fwnode(imsic->fwnode,
&imsic_base_domain_ops, imsic);
if (!imsic->base_domain) {
pr_err("%pfwP: failed to create IMSIC base domain\n", imsic->fwnode);
diff --git a/drivers/irqchip/irq-riscv-intc.c b/drivers/irqchip/irq-riscv-intc.c
index e5805885394e..f837ee2fbaa1 100644
--- a/drivers/irqchip/irq-riscv-intc.c
+++ b/drivers/irqchip/irq-riscv-intc.c
@@ -178,7 +178,7 @@ static int __init riscv_intc_init_common(struct fwnode_handle *fn, struct irq_ch
{
int rc;
- intc_domain = irq_domain_create_tree(fn, &riscv_intc_domain_ops, chip);
+ intc_domain = irq_domain_add_tree_fwnode(fn, &riscv_intc_domain_ops, chip);
if (!intc_domain) {
pr_err("unable to add IRQ domain\n");
return -ENXIO;
diff --git a/drivers/irqchip/irq-sifive-plic.c b/drivers/irqchip/irq-sifive-plic.c
index bf69a4802b71..310aa6a4c337 100644
--- a/drivers/irqchip/irq-sifive-plic.c
+++ b/drivers/irqchip/irq-sifive-plic.c
@@ -639,7 +639,7 @@ static int plic_probe(struct fwnode_handle *fwnode)
nr_handlers++;
}
- priv->irqdomain = irq_domain_create_linear(fwnode, nr_irqs + 1,
+ priv->irqdomain = irq_domain_add_linear_fwnode(fwnode, nr_irqs + 1,
&plic_irqdomain_ops, priv);
if (WARN_ON(!priv->irqdomain)) {
error = -ENOMEM;
diff --git a/drivers/irqchip/irq-uniphier-aidet.c b/drivers/irqchip/irq-uniphier-aidet.c
index 6005c2d28dd9..b6abc74fb7f7 100644
--- a/drivers/irqchip/irq-uniphier-aidet.c
+++ b/drivers/irqchip/irq-uniphier-aidet.c
@@ -185,7 +185,7 @@ static int uniphier_aidet_probe(struct platform_device *pdev)
spin_lock_init(&priv->lock);
- priv->domain = irq_domain_create_hierarchy(
+ priv->domain = irq_domain_add_hierarchy_fwnode(
parent_domain, 0,
UNIPHIER_AIDET_NR_IRQS,
of_fwnode_handle(dev->of_node),
diff --git a/drivers/irqchip/qcom-irq-combiner.c b/drivers/irqchip/qcom-irq-combiner.c
index 18e696dc7f4d..47c1ab68189d 100644
--- a/drivers/irqchip/qcom-irq-combiner.c
+++ b/drivers/irqchip/qcom-irq-combiner.c
@@ -247,10 +247,10 @@ static int __init combiner_probe(struct platform_device *pdev)
if (combiner->parent_irq <= 0)
return -EPROBE_DEFER;
- combiner->domain = irq_domain_create_linear(pdev->dev.fwnode, combiner->nirqs,
+ combiner->domain = irq_domain_add_linear_fwnode(pdev->dev.fwnode, combiner->nirqs,
&domain_ops, combiner);
if (!combiner->domain)
- /* Errors printed by irq_domain_create_linear */
+ /* Errors printed by irq_domain_add_linear_fwnode */
return -ENODEV;
irq_set_chained_handler_and_data(combiner->parent_irq,
diff --git a/drivers/irqchip/qcom-pdc.c b/drivers/irqchip/qcom-pdc.c
index 74b2f124116e..261b1c6f089b 100644
--- a/drivers/irqchip/qcom-pdc.c
+++ b/drivers/irqchip/qcom-pdc.c
@@ -345,7 +345,7 @@ static int qcom_pdc_init(struct device_node *node, struct device_node *parent)
goto fail;
}
- pdc_domain = irq_domain_create_hierarchy(parent_domain,
+ pdc_domain = irq_domain_add_hierarchy_fwnode(parent_domain,
IRQ_DOMAIN_FLAG_QCOM_PDC_WAKEUP,
PDC_MAX_GPIO_IRQS,
of_fwnode_handle(node),
diff --git a/drivers/mfd/ioc3.c b/drivers/mfd/ioc3.c
index 58656837b7c6..966cfced03e3 100644
--- a/drivers/mfd/ioc3.c
+++ b/drivers/mfd/ioc3.c
@@ -138,7 +138,7 @@ static int ioc3_irq_domain_setup(struct ioc3_priv_data *ipd, int irq)
if (!fn)
goto err;
- domain = irq_domain_create_linear(fn, 24, &ioc3_irq_domain_ops, ipd);
+ domain = irq_domain_add_linear_fwnode(fn, 24, &ioc3_irq_domain_ops, ipd);
if (!domain) {
irq_domain_free_fwnode(fn);
goto err;
diff --git a/drivers/misc/lan966x_pci.c b/drivers/misc/lan966x_pci.c
index 9c79b58137e5..8680974078e5 100644
--- a/drivers/misc/lan966x_pci.c
+++ b/drivers/misc/lan966x_pci.c
@@ -64,7 +64,7 @@ static struct pci_dev_intr_ctrl *pci_dev_create_intr_ctrl(struct pci_dev *pdev)
intr_ctrl->pci_dev = pdev;
- intr_ctrl->irq_domain = irq_domain_create_linear(fwnode, 1, &pci_dev_irq_domain_ops,
+ intr_ctrl->irq_domain = irq_domain_add_linear_fwnode(fwnode, 1, &pci_dev_irq_domain_ops,
intr_ctrl);
if (!intr_ctrl->irq_domain) {
pci_err(pdev, "Failed to create irqdomain\n");
diff --git a/drivers/net/usb/smsc95xx.c b/drivers/net/usb/smsc95xx.c
index 8e82184be5e7..2888ca75f900 100644
--- a/drivers/net/usb/smsc95xx.c
+++ b/drivers/net/usb/smsc95xx.c
@@ -1145,7 +1145,7 @@ static int smsc95xx_bind(struct usbnet *dev, struct usb_interface *intf)
goto free_pdata;
}
- pdata->irqdomain = irq_domain_create_linear(pdata->irqfwnode,
+ pdata->irqdomain = irq_domain_add_linear_fwnode(pdata->irqfwnode,
SMSC95XX_NR_IRQS,
&irq_domain_simple_ops,
pdata);
diff --git a/drivers/pci/controller/dwc/pcie-designware-host.c b/drivers/pci/controller/dwc/pcie-designware-host.c
index 1ef6b2a734a3..5612812527af 100644
--- a/drivers/pci/controller/dwc/pcie-designware-host.c
+++ b/drivers/pci/controller/dwc/pcie-designware-host.c
@@ -229,7 +229,7 @@ int dw_pcie_allocate_domains(struct dw_pcie_rp *pp)
struct dw_pcie *pci = to_dw_pcie_from_pp(pp);
struct fwnode_handle *fwnode = of_fwnode_handle(pci->dev->of_node);
- pp->irq_domain = irq_domain_create_linear(fwnode, pp->num_vectors,
+ pp->irq_domain = irq_domain_add_linear_fwnode(fwnode, pp->num_vectors,
&dw_pcie_msi_domain_ops, pp);
if (!pp->irq_domain) {
dev_err(pci->dev, "Failed to create IRQ domain\n");
diff --git a/drivers/pci/controller/pci-tegra.c b/drivers/pci/controller/pci-tegra.c
index b3cdbc5927de..cb9838cf2c95 100644
--- a/drivers/pci/controller/pci-tegra.c
+++ b/drivers/pci/controller/pci-tegra.c
@@ -1702,7 +1702,7 @@ static int tegra_allocate_domains(struct tegra_msi *msi)
struct fwnode_handle *fwnode = dev_fwnode(pcie->dev);
struct irq_domain *parent;
- parent = irq_domain_create_linear(fwnode, INT_PCI_MSI_NR,
+ parent = irq_domain_add_linear_fwnode(fwnode, INT_PCI_MSI_NR,
&tegra_msi_domain_ops, msi);
if (!parent) {
dev_err(pcie->dev, "failed to create IRQ domain\n");
diff --git a/drivers/pci/controller/pcie-apple.c b/drivers/pci/controller/pcie-apple.c
index fefab2758a06..77d8aa56db3a 100644
--- a/drivers/pci/controller/pcie-apple.c
+++ b/drivers/pci/controller/pcie-apple.c
@@ -381,7 +381,7 @@ static int apple_pcie_port_setup_irq(struct apple_pcie_port *port)
if (!irq)
return -ENXIO;
- port->domain = irq_domain_create_linear(fwnode, 32,
+ port->domain = irq_domain_add_linear_fwnode(fwnode, 32,
&apple_port_irq_domain_ops,
port);
if (!port->domain)
@@ -626,7 +626,7 @@ static int apple_msi_init(struct apple_pcie *pcie)
return -ENXIO;
}
- parent = irq_domain_create_hierarchy(parent, 0, pcie->nvecs, fwnode,
+ parent = irq_domain_add_hierarchy_fwnode(parent, 0, pcie->nvecs, fwnode,
&apple_msi_domain_ops, pcie);
if (!parent) {
dev_err(pcie->dev, "failed to create IRQ domain\n");
diff --git a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie-mediatek.c
index cc4cd4c5e63c..4555204a44de 100644
--- a/drivers/pci/controller/pcie-mediatek.c
+++ b/drivers/pci/controller/pcie-mediatek.c
@@ -489,7 +489,7 @@ static int mtk_pcie_allocate_msi_domains(struct mtk_pcie_port *port)
mutex_init(&port->lock);
- port->inner_domain = irq_domain_create_linear(fwnode, MTK_MSI_IRQS_NUM,
+ port->inner_domain = irq_domain_add_linear_fwnode(fwnode, MTK_MSI_IRQS_NUM,
&msi_domain_ops, port);
if (!port->inner_domain) {
dev_err(port->pcie->dev, "failed to create IRQ domain\n");
diff --git a/drivers/pci/controller/pcie-rcar-host.c b/drivers/pci/controller/pcie-rcar-host.c
index 7c92eada04af..e83fbabf982f 100644
--- a/drivers/pci/controller/pcie-rcar-host.c
+++ b/drivers/pci/controller/pcie-rcar-host.c
@@ -730,7 +730,7 @@ static int rcar_allocate_domains(struct rcar_msi *msi)
struct fwnode_handle *fwnode = dev_fwnode(pcie->dev);
struct irq_domain *parent;
- parent = irq_domain_create_linear(fwnode, INT_PCI_MSI_NR,
+ parent = irq_domain_add_linear_fwnode(fwnode, INT_PCI_MSI_NR,
&rcar_msi_domain_ops, msi);
if (!parent) {
dev_err(pcie->dev, "failed to create IRQ domain\n");
diff --git a/drivers/pci/controller/pcie-xilinx.c b/drivers/pci/controller/pcie-xilinx.c
index 6c0268e92e41..73a5ef19cfd2 100644
--- a/drivers/pci/controller/pcie-xilinx.c
+++ b/drivers/pci/controller/pcie-xilinx.c
@@ -275,7 +275,7 @@ static int xilinx_allocate_msi_domains(struct xilinx_pcie *pcie)
struct fwnode_handle *fwnode = dev_fwnode(pcie->dev);
struct irq_domain *parent;
- parent = irq_domain_create_linear(fwnode, XILINX_NUM_MSI_IRQS,
+ parent = irq_domain_add_linear_fwnode(fwnode, XILINX_NUM_MSI_IRQS,
&xilinx_msi_domain_ops, pcie);
if (!parent) {
dev_err(pcie->dev, "failed to create IRQ domain\n");
diff --git a/drivers/pinctrl/samsung/pinctrl-exynos.c b/drivers/pinctrl/samsung/pinctrl-exynos.c
index ac6dc22b37c9..1e5661d088b1 100644
--- a/drivers/pinctrl/samsung/pinctrl-exynos.c
+++ b/drivers/pinctrl/samsung/pinctrl-exynos.c
@@ -405,7 +405,7 @@ __init int exynos_eint_gpio_init(struct samsung_pinctrl_drv_data *d)
}
bank->irq_chip->chip.name = bank->name;
- bank->irq_domain = irq_domain_create_linear(bank->fwnode,
+ bank->irq_domain = irq_domain_add_linear_fwnode(bank->fwnode,
bank->nr_pins, &exynos_eint_irqd_ops, bank);
if (!bank->irq_domain) {
dev_err(dev, "gpio irq domain add failed\n");
@@ -697,7 +697,7 @@ __init int exynos_eint_wkup_init(struct samsung_pinctrl_drv_data *d)
return -ENOMEM;
bank->irq_chip->chip.name = bank->name;
- bank->irq_domain = irq_domain_create_linear(bank->fwnode,
+ bank->irq_domain = irq_domain_add_linear_fwnode(bank->fwnode,
bank->nr_pins, &exynos_eint_irqd_ops, bank);
if (!bank->irq_domain) {
dev_err(dev, "wkup irq domain add failed\n");
diff --git a/drivers/pinctrl/samsung/pinctrl-s3c64xx.c b/drivers/pinctrl/samsung/pinctrl-s3c64xx.c
index 68715c09baa9..e176c7f01e6d 100644
--- a/drivers/pinctrl/samsung/pinctrl-s3c64xx.c
+++ b/drivers/pinctrl/samsung/pinctrl-s3c64xx.c
@@ -484,7 +484,7 @@ static int s3c64xx_eint_gpio_init(struct samsung_pinctrl_drv_data *d)
mask = bank->eint_mask;
nr_eints = fls(mask);
- bank->irq_domain = irq_domain_create_linear(bank->fwnode,
+ bank->irq_domain = irq_domain_add_linear_fwnode(bank->fwnode,
nr_eints, &s3c64xx_gpio_irqd_ops, bank);
if (!bank->irq_domain) {
dev_err(dev, "gpio irq domain add failed\n");
@@ -756,7 +756,7 @@ static int s3c64xx_eint_eint0_init(struct samsung_pinctrl_drv_data *d)
return -ENOMEM;
ddata->bank = bank;
- bank->irq_domain = irq_domain_create_linear(bank->fwnode,
+ bank->irq_domain = irq_domain_add_linear_fwnode(bank->fwnode,
nr_eints, &s3c64xx_eint0_irqd_ops, ddata);
if (!bank->irq_domain) {
dev_err(dev, "wkup irq domain add failed\n");
diff --git a/drivers/pinctrl/stm32/pinctrl-stm32.c b/drivers/pinctrl/stm32/pinctrl-stm32.c
index 5b7fa77c1184..d9539a97a514 100644
--- a/drivers/pinctrl/stm32/pinctrl-stm32.c
+++ b/drivers/pinctrl/stm32/pinctrl-stm32.c
@@ -1356,7 +1356,7 @@ static int stm32_gpiolib_register_bank(struct stm32_pinctrl *pctl, struct fwnode
/* create irq hierarchical domain */
bank->fwnode = fwnode;
- bank->domain = irq_domain_create_hierarchy(pctl->domain, 0, STM32_GPIO_IRQ_LINE,
+ bank->domain = irq_domain_add_hierarchy_fwnode(pctl->domain, 0, STM32_GPIO_IRQ_LINE,
bank->fwnode, &stm32_gpio_domain_ops,
bank);
diff --git a/drivers/platform/x86/intel/crystal_cove_charger.c b/drivers/platform/x86/intel/crystal_cove_charger.c
index e4299cfa2205..7595b239b8d7 100644
--- a/drivers/platform/x86/intel/crystal_cove_charger.c
+++ b/drivers/platform/x86/intel/crystal_cove_charger.c
@@ -100,7 +100,7 @@ static int crystal_cove_charger_probe(struct platform_device *pdev)
if (charger->irq < 0)
return charger->irq;
- charger->irq_domain = irq_domain_create_linear(dev_fwnode(pdev->dev.parent), 1,
+ charger->irq_domain = irq_domain_add_linear_fwnode(dev_fwnode(pdev->dev.parent), 1,
&irq_domain_simple_ops, NULL);
if (!charger->irq_domain)
return -ENOMEM;
diff --git a/drivers/soundwire/irq.c b/drivers/soundwire/irq.c
index c237e6d0766b..7b1d8f91ddb7 100644
--- a/drivers/soundwire/irq.c
+++ b/drivers/soundwire/irq.c
@@ -31,7 +31,7 @@ int sdw_irq_create(struct sdw_bus *bus,
{
bus->irq_chip.name = dev_name(bus->dev);
- bus->domain = irq_domain_create_linear(fwnode, SDW_MAX_DEVICES,
+ bus->domain = irq_domain_add_linear_fwnode(fwnode, SDW_MAX_DEVICES,
&sdw_domain_ops, bus);
if (!bus->domain) {
dev_err(bus->dev, "Failed to add IRQ domain\n");
diff --git a/include/linux/irq_sim.h b/include/linux/irq_sim.h
index 89b4d8ff274b..43a67f96fb97 100644
--- a/include/linux/irq_sim.h
+++ b/include/linux/irq_sim.h
@@ -23,17 +23,17 @@ struct irq_sim_ops {
irq_hw_number_t hwirq, void *data);
};
-struct irq_domain *irq_domain_create_sim(struct fwnode_handle *fwnode,
+struct irq_domain *irq_domain_add_sim_fwnode(struct fwnode_handle *fwnode,
unsigned int num_irqs);
-struct irq_domain *devm_irq_domain_create_sim(struct device *dev,
+struct irq_domain *devm_irq_domain_add_sim_fwnode(struct device *dev,
struct fwnode_handle *fwnode,
unsigned int num_irqs);
-struct irq_domain *irq_domain_create_sim_full(struct fwnode_handle *fwnode,
+struct irq_domain *irq_domain_add_sim_full_fwnode(struct fwnode_handle *fwnode,
unsigned int num_irqs,
const struct irq_sim_ops *ops,
void *data);
struct irq_domain *
-devm_irq_domain_create_sim_full(struct device *dev,
+devm_irq_domain_add_sim_full_fwnode(struct device *dev,
struct fwnode_handle *fwnode,
unsigned int num_irqs,
const struct irq_sim_ops *ops,
diff --git a/include/linux/irqdomain.h b/include/linux/irqdomain.h
index ebc6f622e96b..00a0bf2c0942 100644
--- a/include/linux/irqdomain.h
+++ b/include/linux/irqdomain.h
@@ -333,12 +333,12 @@ struct irq_domain *irq_domain_instantiate(const struct irq_domain_info *info);
struct irq_domain *devm_irq_domain_instantiate(struct device *dev,
const struct irq_domain_info *info);
-struct irq_domain *irq_domain_create_simple(struct fwnode_handle *fwnode,
+struct irq_domain *irq_domain_add_simple_fwnode(struct fwnode_handle *fwnode,
unsigned int size,
unsigned int first_irq,
const struct irq_domain_ops *ops,
void *host_data);
-struct irq_domain *irq_domain_create_legacy(struct fwnode_handle *fwnode,
+struct irq_domain *irq_domain_add_legacy_fwnode(struct fwnode_handle *fwnode,
unsigned int size,
unsigned int first_irq,
irq_hw_number_t first_hwirq,
@@ -367,7 +367,7 @@ static inline struct irq_domain *irq_domain_add_legacy_of_node(struct device_nod
const struct irq_domain_ops *ops,
void *host_data)
{
- return irq_domain_create_legacy(of_fwnode_handle(of_node), size,
+ return irq_domain_add_legacy_fwnode(of_fwnode_handle(of_node), size,
first_irq, first_hwirq, ops, host_data);
}
@@ -423,7 +423,7 @@ static inline struct irq_domain *irq_domain_add_simple_of_node(struct device_nod
const struct irq_domain_ops *ops,
void *host_data)
{
- return irq_domain_create_simple(of_fwnode_handle(of_node), size, first_irq, ops, host_data);
+ return irq_domain_add_simple_fwnode(of_fwnode_handle(of_node), size, first_irq, ops, host_data);
}
/**
@@ -486,7 +486,7 @@ static inline struct irq_domain *irq_domain_add_tree_of_node(struct device_node
return IS_ERR(d) ? NULL : d;
}
-static inline struct irq_domain *irq_domain_create_linear(struct fwnode_handle *fwnode,
+static inline struct irq_domain *irq_domain_add_linear_fwnode(struct fwnode_handle *fwnode,
unsigned int size,
const struct irq_domain_ops *ops,
void *host_data)
@@ -503,7 +503,7 @@ static inline struct irq_domain *irq_domain_create_linear(struct fwnode_handle *
return IS_ERR(d) ? NULL : d;
}
-static inline struct irq_domain *irq_domain_create_tree(struct fwnode_handle *fwnode,
+static inline struct irq_domain *irq_domain_add_tree_fwnode(struct fwnode_handle *fwnode,
const struct irq_domain_ops *ops,
void *host_data)
{
@@ -608,7 +608,7 @@ void irq_domain_set_info(struct irq_domain *domain, unsigned int virq,
void irq_domain_reset_irq_data(struct irq_data *irq_data);
#ifdef CONFIG_IRQ_DOMAIN_HIERARCHY
/**
- * irq_domain_create_hierarchy - Add a irqdomain into the hierarchy
+ * irq_domain_add_hierarchy_fwnode - Add a irqdomain into the hierarchy
* @parent: Parent irq domain to associate with the new domain
* @flags: Irq domain flags associated to the domain
* @size: Size of the domain. See below
@@ -622,7 +622,7 @@ void irq_domain_reset_irq_data(struct irq_data *irq_data);
* domain flags are set.
* Returns pointer to IRQ domain, or NULL on failure.
*/
-static inline struct irq_domain *irq_domain_create_hierarchy(struct irq_domain *parent,
+static inline struct irq_domain *irq_domain_add_hierarchy_fwnode(struct irq_domain *parent,
unsigned int flags,
unsigned int size,
struct fwnode_handle *fwnode,
@@ -650,7 +650,7 @@ static inline struct irq_domain *irq_domain_add_hierarchy_of_node(struct irq_dom
const struct irq_domain_ops *ops,
void *host_data)
{
- return irq_domain_create_hierarchy(parent, flags, size,
+ return irq_domain_add_hierarchy_fwnode(parent, flags, size,
of_fwnode_handle(node),
ops, host_data);
}
diff --git a/kernel/irq/ipi-mux.c b/kernel/irq/ipi-mux.c
index fa4fc18c6131..03d46f977a44 100644
--- a/kernel/irq/ipi-mux.c
+++ b/kernel/irq/ipi-mux.c
@@ -174,7 +174,7 @@ int ipi_mux_create(unsigned int nr_ipi, void (*mux_send)(unsigned int cpu))
goto fail_free_cpu;
}
- domain = irq_domain_create_linear(fwnode, nr_ipi,
+ domain = irq_domain_add_linear_fwnode(fwnode, nr_ipi,
&ipi_mux_domain_ops, NULL);
if (!domain) {
pr_err("unable to add IPI Mux domain\n");
diff --git a/kernel/irq/irq_sim.c b/kernel/irq/irq_sim.c
index 1a3d483548e2..69515f1501b2 100644
--- a/kernel/irq/irq_sim.c
+++ b/kernel/irq/irq_sim.c
@@ -180,7 +180,7 @@ static const struct irq_domain_ops irq_sim_domain_ops = {
};
/**
- * irq_domain_create_sim - Create a new interrupt simulator irq_domain and
+ * irq_domain_add_sim_fwnode - Create a new interrupt simulator irq_domain and
* allocate a range of dummy interrupts.
*
* @fwnode: struct fwnode_handle to be associated with this domain.
@@ -189,14 +189,14 @@ static const struct irq_domain_ops irq_sim_domain_ops = {
* On success: return a new irq_domain object.
* On failure: a negative errno wrapped with ERR_PTR().
*/
-struct irq_domain *irq_domain_create_sim(struct fwnode_handle *fwnode,
+struct irq_domain *irq_domain_add_sim_fwnode(struct fwnode_handle *fwnode,
unsigned int num_irqs)
{
- return irq_domain_create_sim_full(fwnode, num_irqs, NULL, NULL);
+ return irq_domain_add_sim_full_fwnode(fwnode, num_irqs, NULL, NULL);
}
-EXPORT_SYMBOL_GPL(irq_domain_create_sim);
+EXPORT_SYMBOL_GPL(irq_domain_add_sim_fwnode);
-struct irq_domain *irq_domain_create_sim_full(struct fwnode_handle *fwnode,
+struct irq_domain *irq_domain_add_sim_full_fwnode(struct fwnode_handle *fwnode,
unsigned int num_irqs,
const struct irq_sim_ops *ops,
void *data)
@@ -211,7 +211,7 @@ struct irq_domain *irq_domain_create_sim_full(struct fwnode_handle *fwnode,
if (!pending)
return ERR_PTR(-ENOMEM);
- work_ctx->domain = irq_domain_create_linear(fwnode, num_irqs,
+ work_ctx->domain = irq_domain_add_linear_fwnode(fwnode, num_irqs,
&irq_sim_domain_ops,
work_ctx);
if (!work_ctx->domain)
@@ -227,7 +227,7 @@ struct irq_domain *irq_domain_create_sim_full(struct fwnode_handle *fwnode,
return no_free_ptr(work_ctx)->domain;
}
-EXPORT_SYMBOL_GPL(irq_domain_create_sim_full);
+EXPORT_SYMBOL_GPL(irq_domain_add_sim_full_fwnode);
/**
* irq_domain_remove_sim - Deinitialize the interrupt simulator domain: free
@@ -255,7 +255,7 @@ static void devm_irq_domain_remove_sim(void *data)
}
/**
- * devm_irq_domain_create_sim - Create a new interrupt simulator for
+ * devm_irq_domain_add_sim_fwnode - Create a new interrupt simulator for
* a managed device.
*
* @dev: Device to initialize the simulator object for.
@@ -265,17 +265,17 @@ static void devm_irq_domain_remove_sim(void *data)
* On success: return a new irq_domain object.
* On failure: a negative errno wrapped with ERR_PTR().
*/
-struct irq_domain *devm_irq_domain_create_sim(struct device *dev,
+struct irq_domain *devm_irq_domain_add_sim_fwnode(struct device *dev,
struct fwnode_handle *fwnode,
unsigned int num_irqs)
{
- return devm_irq_domain_create_sim_full(dev, fwnode, num_irqs,
+ return devm_irq_domain_add_sim_full_fwnode(dev, fwnode, num_irqs,
NULL, NULL);
}
-EXPORT_SYMBOL_GPL(devm_irq_domain_create_sim);
+EXPORT_SYMBOL_GPL(devm_irq_domain_add_sim_fwnode);
struct irq_domain *
-devm_irq_domain_create_sim_full(struct device *dev,
+devm_irq_domain_add_sim_full_fwnode(struct device *dev,
struct fwnode_handle *fwnode,
unsigned int num_irqs,
const struct irq_sim_ops *ops,
@@ -284,7 +284,7 @@ devm_irq_domain_create_sim_full(struct device *dev,
struct irq_domain *domain;
int ret;
- domain = irq_domain_create_sim_full(fwnode, num_irqs, ops, data);
+ domain = irq_domain_add_sim_full_fwnode(fwnode, num_irqs, ops, data);
if (IS_ERR(domain))
return domain;
@@ -294,4 +294,4 @@ devm_irq_domain_create_sim_full(struct device *dev,
return domain;
}
-EXPORT_SYMBOL_GPL(devm_irq_domain_create_sim_full);
+EXPORT_SYMBOL_GPL(devm_irq_domain_add_sim_full_fwnode);
diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
index 00f254a67bb0..2d5f716887d9 100644
--- a/kernel/irq/irqdomain.c
+++ b/kernel/irq/irqdomain.c
@@ -443,7 +443,7 @@ void irq_domain_update_bus_token(struct irq_domain *domain,
EXPORT_SYMBOL_GPL(irq_domain_update_bus_token);
/**
- * irq_domain_create_simple() - Register an irq_domain and optionally map a range of irqs
+ * irq_domain_add_simple_fwnode() - Register an irq_domain and optionally map a range of irqs
* @fwnode: firmware node for the interrupt controller
* @size: total number of irqs in mapping
* @first_irq: first number of irq block assigned to the domain,
@@ -460,7 +460,7 @@ EXPORT_SYMBOL_GPL(irq_domain_update_bus_token);
* irqs get mapped dynamically on the fly. However, if the controller requires
* static virq assignments (non-DT boot) then it will set that up correctly.
*/
-struct irq_domain *irq_domain_create_simple(struct fwnode_handle *fwnode,
+struct irq_domain *irq_domain_add_simple_fwnode(struct fwnode_handle *fwnode,
unsigned int size,
unsigned int first_irq,
const struct irq_domain_ops *ops,
@@ -478,9 +478,9 @@ struct irq_domain *irq_domain_create_simple(struct fwnode_handle *fwnode,
return IS_ERR(domain) ? NULL : domain;
}
-EXPORT_SYMBOL_GPL(irq_domain_create_simple);
+EXPORT_SYMBOL_GPL(irq_domain_add_simple_fwnode);
-struct irq_domain *irq_domain_create_legacy(struct fwnode_handle *fwnode,
+struct irq_domain *irq_domain_add_legacy_fwnode(struct fwnode_handle *fwnode,
unsigned int size,
unsigned int first_irq,
irq_hw_number_t first_hwirq,
@@ -500,7 +500,7 @@ struct irq_domain *irq_domain_create_legacy(struct fwnode_handle *fwnode,
return IS_ERR(domain) ? NULL : domain;
}
-EXPORT_SYMBOL_GPL(irq_domain_create_legacy);
+EXPORT_SYMBOL_GPL(irq_domain_add_legacy_fwnode);
/**
* irq_find_matching_fwspec() - Locates a domain for a given fwspec
diff --git a/kernel/irq/msi.c b/kernel/irq/msi.c
index 396a067a8a56..1facbb56108c 100644
--- a/kernel/irq/msi.c
+++ b/kernel/irq/msi.c
@@ -858,7 +858,7 @@ static struct irq_domain *__msi_create_irq_domain(struct fwnode_handle *fwnode,
if (info->flags & MSI_FLAG_USE_DEF_CHIP_OPS)
msi_domain_update_chip_ops(info);
- domain = irq_domain_create_hierarchy(parent, flags | IRQ_DOMAIN_FLAG_MSI, 0,
+ domain = irq_domain_add_hierarchy_fwnode(parent, flags | IRQ_DOMAIN_FLAG_MSI, 0,
fwnode, &msi_domain_ops, info);
if (domain) {
diff --git a/sound/soc/codecs/rt5677.c b/sound/soc/codecs/rt5677.c
index 0e70a3ab42b5..66116381784d 100644
--- a/sound/soc/codecs/rt5677.c
+++ b/sound/soc/codecs/rt5677.c
@@ -5509,7 +5509,7 @@ static int rt5677_init_irq(struct i2c_client *i2c)
RT5677_GPIO1_PIN_MASK, RT5677_GPIO1_PIN_IRQ);
/* Ready to listen for interrupts */
- rt5677->domain = irq_domain_create_linear(dev_fwnode(&i2c->dev),
+ rt5677->domain = irq_domain_add_linear_fwnode(dev_fwnode(&i2c->dev),
RT5677_IRQ_NUM, &rt5677_domain_ops, rt5677);
if (!rt5677->domain) {
dev_err(&i2c->dev, "Failed to create IRQ domain\n");
--
2.48.0
Powered by blists - more mailing lists