Explorar o código

Merge tag 'pinctrl-v3.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl

Pull pin control fixes from Linus Walleij:
 "Here are three pin control fixes for the v3.16 series.  Sorry that
  some of these arrive late, the summer heat in Sweden makes me slow.

   - an IRQ handling fix for the STi driver, also for stable
   - another IRQ fix for the RCAR GPIO driver
   - a MAINTAINERS entry"

* tag 'pinctrl-v3.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
  gpio: rcar: Add support for DT IRQ flags
  MAINTAINERS: Add entry for the Renesas pin controller driver
  pinctrl: st: Fix irqmux handler
Linus Torvalds %!s(int64=11) %!d(string=hai) anos
pai
achega
02ec474746
Modificáronse 3 ficheiros con 8 adicións e 1 borrados
  1. 6 0
      MAINTAINERS
  2. 1 0
      drivers/gpio/gpio-rcar.c
  3. 1 1
      drivers/pinctrl/pinctrl-st.c

+ 6 - 0
MAINTAINERS

@@ -6956,6 +6956,12 @@ L:	linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 S:	Maintained
 S:	Maintained
 F:	drivers/pinctrl/pinctrl-at91.c
 F:	drivers/pinctrl/pinctrl-at91.c
 
 
+PIN CONTROLLER - RENESAS
+M:	Laurent Pinchart <laurent.pinchart@ideasonboard.com>
+L:	linux-sh@vger.kernel.org
+S:	Maintained
+F:	drivers/pinctrl/sh-pfc/
+
 PIN CONTROLLER - SAMSUNG
 PIN CONTROLLER - SAMSUNG
 M:	Tomasz Figa <t.figa@samsung.com>
 M:	Tomasz Figa <t.figa@samsung.com>
 M:	Thomas Abraham <thomas.abraham@linaro.org>
 M:	Thomas Abraham <thomas.abraham@linaro.org>

+ 1 - 0
drivers/gpio/gpio-rcar.c

@@ -284,6 +284,7 @@ static int gpio_rcar_irq_domain_map(struct irq_domain *h, unsigned int irq,
 
 
 static struct irq_domain_ops gpio_rcar_irq_domain_ops = {
 static struct irq_domain_ops gpio_rcar_irq_domain_ops = {
 	.map	= gpio_rcar_irq_domain_map,
 	.map	= gpio_rcar_irq_domain_map,
+	.xlate	= irq_domain_xlate_twocell,
 };
 };
 
 
 struct gpio_rcar_info {
 struct gpio_rcar_info {

+ 1 - 1
drivers/pinctrl/pinctrl-st.c

@@ -1431,7 +1431,7 @@ static void st_gpio_irqmux_handler(unsigned irq, struct irq_desc *desc)
 
 
 	status = readl(info->irqmux_base);
 	status = readl(info->irqmux_base);
 
 
-	for_each_set_bit(n, &status, ST_GPIO_PINS_PER_BANK)
+	for_each_set_bit(n, &status, info->nbanks)
 		__gpio_irq_handler(&info->banks[n]);
 		__gpio_irq_handler(&info->banks[n]);
 
 
 	chained_irq_exit(chip, desc);
 	chained_irq_exit(chip, desc);