summaryrefslogtreecommitdiff
path: root/fs/omfs
diff options
context:
space:
mode:
authorDoug Berger <opendmb@gmail.com>2017-10-24 22:54:47 +0300
committerLinus Walleij <linus.walleij@linaro.org>2017-10-31 12:28:46 +0300
commit142c168e0e50164e67c9399c28dedd65a307cfe5 (patch)
tree14d95525b7213c9458768a45c18dba8406cd6d64 /fs/omfs
parent0752df6611f1783d71394a4987d3c134c9ba3fdd (diff)
downloadlinux-142c168e0e50164e67c9399c28dedd65a307cfe5.tar.xz
gpio: brcmstb: release the bgpio lock during irq handlers
The basic memory-mapped GPIO controller lock must be released before calling the registered GPIO interrupt handlers to allow the interrupt handlers to access the hardware. Examples of why a GPIO interrupt handler might want to access the GPIO hardware include an interrupt that is configured to trigger on rising and falling edges that needs to read the current level of the input to know how to respond, or an interrupt that causes a change in a GPIO output in the same bank. If the lock is not released before enterring the handler the hardware accesses will deadlock when they attempt to grab the lock. Since the lock is only needed to protect the calculation of unmasked pending interrupts create a dedicated function to perform this and hide the complexity. Fixes: 19a7b6940b78 ("gpio: brcmstb: Add interrupt and wakeup source support") Signed-off-by: Doug Berger <opendmb@gmail.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Acked-by: Gregory Fong <gregory.0xf0@gmail.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'fs/omfs')
0 files changed, 0 insertions, 0 deletions