On Wed, Jul 2, 2014 at 5:41 PM, Tomasz Figa <t.figa@xxxxxxxxxxx> wrote: > Currently after configuring a GPIO pin as an interrupt related pinmux > registers are changed, but there is no protection from calling > gpio_direction_*() in a badly written driver, which would cause the same > pinmux register to be reconfigured for regular input/output and this > disabling interrupt capability of the pin. > > This patch addresses this issue by moving pinmux reconfiguration to > .irq_startup() callback of irq_chip and calling gpio_lock_as_irq() > helper to prevent reconfiguration of pin direction. > > Signed-off-by: Tomasz Figa <t.figa@xxxxxxxxxxx> (...) > + .irq_startup = exynos_irq_startup, > + .irq_shutdown = exynos_irq_shutdown, I think you should be using the .irq_request_resources and .irq_release_resources callbacks instead. The reason is that startup and shutdown cannot really fail (ret code is unsigned...), so using the other callbacks is safer. Can you have a quick look at this before I apply any more of the Samsung patches? Yours, Linus Walleij -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html