Patch "gpio: MT7621: use a per instance irq_chip structure" has been added to the 4.20-stable tree
Subsystems (2)
[email protected]
AppliedThis is a note to let you know that I've just added the patch titled
gpio: MT7621: use a per instance irq_chip structure
to the 4.20-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
gpio-mt7621-use-a-per-instance-irq_chip-structure.patch
and it can be found in the queue-4.20 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
From fa84667b98fd1a191b2465d66b440bda6714b3bf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ren=C3=A9=20van=20Dorst?= <[email protected]>
Date: Wed, 30 Jan 2019 17:10:49 +0100
Subject: gpio: MT7621: use a per instance irq_chip structure
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
From: René van Dorst <[email protected]>
commit fa84667b98fd1a191b2465d66b440bda6714b3bf upstream.
This fixes the kernel complains:
gpio gpiochip1: (1e000600.gpio-bank1): detected irqchip that is shared
with multiple gpiochips: please fix the driver.
gpio gpiochip2: (1e000600.gpio-bank2): detected irqchip that is shared
with multiple gpiochips: please fix the driver.
--- drivers/gpio/gpio-mt7621.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-)
drivers/gpio/gpio-mt7621.c +10 -10
@@ -30,6 +30,7 @@#define GPIO_REG_EDGE 0xA0struct mtk_gc { +struct irq_chip irq_chip;struct gpio_chip chip;spinlock_t lock;int bank;
@@ -189,13 +190,6 @@ mediatek_gpio_irq_type(struct irq_data *return 0 ; } -static struct irq_chip mediatek_gpio_irq_chip = { - .irq_unmask = mediatek_gpio_irq_unmask, - .irq_mask = mediatek_gpio_irq_mask, - .irq_mask_ack = mediatek_gpio_irq_mask, - .irq_set_type = mediatek_gpio_irq_type, -}; -static int mediatek_gpio_xlate (struct gpio_chip *chip,const struct of_phandle_args *spec,u32 *flags)
@@ -254,6 +248,13 @@ mediatek_gpio_bank_probe(struct device *return ret; } + rg->irq_chip.name =dev_name (dev); + rg->irq_chip.parent_device = dev; + rg->irq_chip.irq_unmask = mediatek_gpio_irq_unmask; + rg->irq_chip.irq_mask = mediatek_gpio_irq_mask; + rg->irq_chip.irq_mask_ack = mediatek_gpio_irq_mask; + rg->irq_chip.irq_set_type = mediatek_gpio_irq_type; +if (mtk->gpio_irq) {/* * Manually request the irq here instead of passing
@@ -270,14 +271,14 @@ mediatek_gpio_bank_probe(struct device *return ret; } - ret =gpiochip_irqchip_add (&rg->chip, &mediatek_gpio_irq_chip, + ret =gpiochip_irqchip_add (&rg->chip, &rg->irq_chip,0 , handle_simple_irq,IRQ_TYPE_NONE );if (ret) {dev_err (dev,"failed to add gpiochip_irqchip\n" );return ret; } -gpiochip_set_chained_irqchip (&rg->chip, &mediatek_gpio_irq_chip, +gpiochip_set_chained_irqchip (&rg->chip, &rg->irq_chip, mtk->gpio_irq,NULL ); }
@@ -310,7 +311,6 @@ mediatek_gpio_probe(struct platform_devi mtk->gpio_irq =irq_of_parse_and_map (np,0 ); mtk->dev = dev;platform_set_drvdata (pdev, mtk); - mediatek_gpio_irq_chip.name =dev_name (dev);for (i =0 ; i <MTK_BANK_CNT ; i++) { ret =mediatek_gpio_bank_probe (dev, np, i);
Patches currently in stable-queue which might be from [email protected] are
queue-4.20/gpio-mt7621-use-a-per-instance-irq_chip-structure.patch
_______________________________________________
Linux-mediatek mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-mediatek