[PATCH 14/20] gpio/rockchip: switch to use irq_domain_create_linear
Jianqun Xu
jay.xu at rock-chips.com
Tue Sep 20 03:31:02 PDT 2022
Switch to use irq_domain_create_linear to create the irq domain for the
Rockchip GPIO bank, whose argument is fwnode istead of of_node.
Signed-off-by: Jianqun Xu <jay.xu at rock-chips.com>
---
drivers/gpio/gpio-rockchip.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/gpio/gpio-rockchip.c b/drivers/gpio/gpio-rockchip.c
index 1a800f972594..4fcd75d710c1 100644
--- a/drivers/gpio/gpio-rockchip.c
+++ b/drivers/gpio/gpio-rockchip.c
@@ -28,6 +28,8 @@
#define GPIO_TYPE_V2 (0x01000C2B) /* GPIO Version ID 0x01000C2B */
#define GPIO_TYPE_V2_1 (0x0101157C) /* GPIO Version ID 0x0101157C */
+#define GPIO_MAX_PINS (32)
+
static const struct rockchip_gpio_regs gpio_regs_v1 = {
.port_dr = 0x00,
.port_ddr = 0x04,
@@ -520,14 +522,15 @@ static int rockchip_interrupts_register(struct rockchip_pin_bank *bank)
struct irq_chip_generic *gc;
int ret;
- bank->domain = irq_domain_add_linear(bank->of_node, 32,
- &irq_generic_chip_ops, NULL);
+ bank->domain = irq_domain_create_linear(dev_fwnode(bank->dev),
+ GPIO_MAX_PINS,
+ &irq_generic_chip_ops, NULL);
if (!bank->domain) {
dev_warn(bank->dev, "could not init irq domain\n");
return -EINVAL;
}
- ret = irq_alloc_domain_generic_chips(bank->domain, 32, 1,
+ ret = irq_alloc_domain_generic_chips(bank->domain, GPIO_MAX_PINS, 1,
"rockchip_gpio_irq",
handle_level_irq,
clr, 0, 0);
--
2.25.1
More information about the Linux-rockchip
mailing list