X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=target%2Flinux%2Fath79%2Fpatches-6.1%2F010-v6.4-gpio-ath79-Convert-to-immutable-irq_chip.patch;fp=target%2Flinux%2Fath79%2Fpatches-6.1%2F010-v6.4-gpio-ath79-Convert-to-immutable-irq_chip.patch;h=0000000000000000000000000000000000000000;hb=7d01a0b436ac242e618f86d4eede141968e2e2f8;hp=942380fc7b41e7b742308e3a7d39c494080af0bf;hpb=e155e3bd093109744f77f884fa731e51fb2edb42;p=openwrt%2Fopenwrt.git diff --git a/target/linux/ath79/patches-6.1/010-v6.4-gpio-ath79-Convert-to-immutable-irq_chip.patch b/target/linux/ath79/patches-6.1/010-v6.4-gpio-ath79-Convert-to-immutable-irq_chip.patch deleted file mode 100644 index 942380fc7b..0000000000 --- a/target/linux/ath79/patches-6.1/010-v6.4-gpio-ath79-Convert-to-immutable-irq_chip.patch +++ /dev/null @@ -1,60 +0,0 @@ -From b11ce7e48121a02ceedec9f4dfcab4f2bee8f35f Mon Sep 17 00:00:00 2001 -From: Linus Walleij -Date: Thu, 9 Mar 2023 08:45:54 +0100 -Subject: gpio: ath79: Convert to immutable irq_chip - -Convert the driver to immutable irq-chip with a bit of -intuition. - -Cc: Marc Zyngier -Acked-by: Marc Zyngier -Signed-off-by: Linus Walleij -Signed-off-by: Bartosz Golaszewski ---- - drivers/gpio/gpio-ath79.c | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - ---- a/drivers/gpio/gpio-ath79.c -+++ b/drivers/gpio/gpio-ath79.c -@@ -71,6 +71,7 @@ static void ath79_gpio_irq_unmask(struct - u32 mask = BIT(irqd_to_hwirq(data)); - unsigned long flags; - -+ gpiochip_enable_irq(&ctrl->gc, irqd_to_hwirq(data)); - raw_spin_lock_irqsave(&ctrl->lock, flags); - ath79_gpio_update_bits(ctrl, AR71XX_GPIO_REG_INT_MASK, mask, mask); - raw_spin_unlock_irqrestore(&ctrl->lock, flags); -@@ -85,6 +86,7 @@ static void ath79_gpio_irq_mask(struct i - raw_spin_lock_irqsave(&ctrl->lock, flags); - ath79_gpio_update_bits(ctrl, AR71XX_GPIO_REG_INT_MASK, mask, 0); - raw_spin_unlock_irqrestore(&ctrl->lock, flags); -+ gpiochip_disable_irq(&ctrl->gc, irqd_to_hwirq(data)); - } - - static void ath79_gpio_irq_enable(struct irq_data *data) -@@ -169,13 +171,15 @@ static int ath79_gpio_irq_set_type(struc - return 0; - } - --static struct irq_chip ath79_gpio_irqchip = { -+static const struct irq_chip ath79_gpio_irqchip = { - .name = "gpio-ath79", - .irq_enable = ath79_gpio_irq_enable, - .irq_disable = ath79_gpio_irq_disable, - .irq_mask = ath79_gpio_irq_mask, - .irq_unmask = ath79_gpio_irq_unmask, - .irq_set_type = ath79_gpio_irq_set_type, -+ .flags = IRQCHIP_IMMUTABLE, -+ GPIOCHIP_IRQ_RESOURCE_HELPERS, - }; - - static void ath79_gpio_irq_handler(struct irq_desc *desc) -@@ -274,7 +278,7 @@ static int ath79_gpio_probe(struct platf - /* Optional interrupt setup */ - if (!np || of_property_read_bool(np, "interrupt-controller")) { - girq = &ctrl->gc.irq; -- girq->chip = &ath79_gpio_irqchip; -+ gpio_irq_chip_set_chip(girq, &ath79_gpio_irqchip); - girq->parent_handler = ath79_gpio_irq_handler; - girq->num_parents = 1; - girq->parents = devm_kcalloc(dev, 1, sizeof(*girq->parents),