diff options
Diffstat (limited to 'target/linux/brcm2708/patches-4.9/950-0013-pinctrl-bcm2835-Only-request-the-interrupts-listed-i.patch')
-rw-r--r-- | target/linux/brcm2708/patches-4.9/950-0013-pinctrl-bcm2835-Only-request-the-interrupts-listed-i.patch | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-4.9/950-0013-pinctrl-bcm2835-Only-request-the-interrupts-listed-i.patch b/target/linux/brcm2708/patches-4.9/950-0013-pinctrl-bcm2835-Only-request-the-interrupts-listed-i.patch new file mode 100644 index 0000000000..d2b764f98a --- /dev/null +++ b/target/linux/brcm2708/patches-4.9/950-0013-pinctrl-bcm2835-Only-request-the-interrupts-listed-i.patch @@ -0,0 +1,27 @@ +From 6b37913f47f5fbd2748ea9abfb9a17fcfb1b5d29 Mon Sep 17 00:00:00 2001 +From: Phil Elwell <phil@raspberrypi.org> +Date: Thu, 26 Feb 2015 09:58:22 +0000 +Subject: [PATCH] pinctrl-bcm2835: Only request the interrupts listed in the + DTB + +Although the GPIO controller can generate three interrupts (four counting +the common one), the device tree files currently only specify two. In the +absence of the third, simply don't register that interrupt (as opposed to +registering 0), which has the effect of making it impossible to generate +interrupts for GPIOs 46-53 which, since they share pins with the SD card +interface, is unlikely to be a problem. +--- + drivers/pinctrl/bcm/pinctrl-bcm2835.c | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c ++++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c +@@ -1042,6 +1042,8 @@ static int bcm2835_pinctrl_probe(struct + int len; + char *name; + pc->irq[i] = irq_of_parse_and_map(np, i); ++ if (pc->irq[i] == 0) ++ break; + pc->irq_data[i].pc = pc; + pc->irq_data[i].irqgroup = i; + |