Re: [linux-yocto] [PATCH 26/29] pinctrl-baytrail: unmap interrupt when free the gpio pin
On 4/7/2014 8:18 AM, rebecca.swee.fun.ch...@intel.com wrote: From: "Chew, Kean Ho" In to_irq() callback, we create the hwirq to linux irq mapping for the requested GPIO pin. Hence, we unamp typo: unamp/unmap the mapping when the gpio pin is being released. Signed-off-by: Chew, Kean Ho Signed-off-by: Chew, Chiau Ee Signed-off-by: Sreeju Selvaraj --- drivers/pinctrl/pinctrl-baytrail.c |3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/pinctrl/pinctrl-baytrail.c b/drivers/pinctrl/pinctrl-baytrail.c index c0ef8e2..554e279 100644 --- a/drivers/pinctrl/pinctrl-baytrail.c +++ b/drivers/pinctrl/pinctrl-baytrail.c @@ -177,11 +177,14 @@ static void byt_gpio_free(struct gpio_chip *chip, unsigned offset) struct byt_gpio *vg = to_byt_gpio(chip); void __iomem *reg = byt_gpio_reg(&vg->chip, offset, BYT_CONF0_REG); u32 value; + unsigned int virq; /* clear interrupt triggering */ value = readl(reg); value &= ~(BYT_TRIG_POS | BYT_TRIG_NEG | BYT_TRIG_LVL); writel(value, reg); + virq = irq_find_mapping(vg->domain, offset); + irq_dispose_mapping(virq); pm_runtime_put(&vg->pdev->dev); } -- ___ linux-yocto mailing list linux-yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/linux-yocto
[linux-yocto] [PATCH 26/29] pinctrl-baytrail: unmap interrupt when free the gpio pin
From: "Chew, Kean Ho" In to_irq() callback, we create the hwirq to linux irq mapping for the requested GPIO pin. Hence, we unamp the mapping when the gpio pin is being released. Signed-off-by: Chew, Kean Ho Signed-off-by: Chew, Chiau Ee Signed-off-by: Sreeju Selvaraj --- drivers/pinctrl/pinctrl-baytrail.c |3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/pinctrl/pinctrl-baytrail.c b/drivers/pinctrl/pinctrl-baytrail.c index c0ef8e2..554e279 100644 --- a/drivers/pinctrl/pinctrl-baytrail.c +++ b/drivers/pinctrl/pinctrl-baytrail.c @@ -177,11 +177,14 @@ static void byt_gpio_free(struct gpio_chip *chip, unsigned offset) struct byt_gpio *vg = to_byt_gpio(chip); void __iomem *reg = byt_gpio_reg(&vg->chip, offset, BYT_CONF0_REG); u32 value; + unsigned int virq; /* clear interrupt triggering */ value = readl(reg); value &= ~(BYT_TRIG_POS | BYT_TRIG_NEG | BYT_TRIG_LVL); writel(value, reg); + virq = irq_find_mapping(vg->domain, offset); + irq_dispose_mapping(virq); pm_runtime_put(&vg->pdev->dev); } -- 1.7.10.4 -- ___ linux-yocto mailing list linux-yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/linux-yocto