Просмотр исходного кода

gpio: set explicit nesting on drivers

The ADNP, CrystalCove and WhiskeyCove are all nested GPIO
irqchips, but were avoiding to connect the parent IRQ to
the gpiochip. This works, but is kind of sloppy as the
child IRQs are not marked as having the parent IRQ as
parent.

Cc: Mika Westerberg <mika.westerberg@linux.intel.com>
Cc: Ajay Thomas <ajay.thomas.david.rajamanickam@intel.com>
Cc: Bin Gao <bin.gao@linux.intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Linus Walleij 9 лет назад
Родитель
Сommit
35ca3f6161
3 измененных файлов с 6 добавлено и 0 удалено
  1. 2 0
      drivers/gpio/gpio-adnp.c
  2. 2 0
      drivers/gpio/gpio-crystalcove.c
  3. 2 0
      drivers/gpio/gpio-wcove.c

+ 2 - 0
drivers/gpio/gpio-adnp.c

@@ -479,6 +479,8 @@ static int adnp_irq_setup(struct adnp *adnp)
 		return err;
 	}
 
+	gpiochip_set_nested_irqchip(chip, &adnp_irq_chip, adnp->client->irq);
+
 	return 0;
 }
 

+ 2 - 0
drivers/gpio/gpio-crystalcove.c

@@ -362,6 +362,8 @@ static int crystalcove_gpio_probe(struct platform_device *pdev)
 		return retval;
 	}
 
+	gpiochip_set_nested_irqchip(&cg->chip, &crystalcove_irqchip, irq);
+
 	return 0;
 }
 

+ 2 - 0
drivers/gpio/gpio-wcove.c

@@ -446,6 +446,8 @@ static int wcove_gpio_probe(struct platform_device *pdev)
 		return ret;
 	}
 
+	gpiochip_set_nested_irqchip(&wg->chip, &wcove_irqchip, virq);
+
 	return 0;
 }