]> git.baikalelectronics.ru Git - kernel.git/commit
pinctrl: bcm2835: Fix ints for GPIOs 28-31 & 46-53
authorPhil Elwell <phil@raspberrypi.org>
Tue, 24 Feb 2015 13:40:50 +0000 (13:40 +0000)
committerLinus Walleij <linus.walleij@linaro.org>
Mon, 14 Nov 2016 23:13:52 +0000 (00:13 +0100)
commita2e4d4a8f854f950d38ab235b9db356d3730d82d
tree146b11571798f79d183c33c162141d6c4a8ad5f4
parent72a985d1d9060c7b33a067ca3ff6b71ddd1414e2
pinctrl: bcm2835: Fix ints for GPIOs 28-31 & 46-53

Contrary to the documentation, the BCM2835 GPIO controller actually
has four interrupt lines - one each for the three IRQ groups and one
common. Confusingly, the GPIO interrupt groups don't correspond
directly with the GPIO control banks. Instead, GPIOs 0-27 generate IRQ
GPIO0, 28-45 IRQ GPIO1 and 46-53 IRQ GPIO2.

Awkwardly, the GPIOs for IRQ GPIO1 straddle two 32-entry GPIO banks,
so split out a function to process the interrupts for a single GPIO
bank.

Cc: Stefan Wahren <stefan.wahren@i2se.com>
Cc: Stephen Warren <swarren@wwwdotorg.org>
Signed-off-by: Phil Elwell <phil@raspberrypi.org>
Acked-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/bcm/pinctrl-bcm2835.c