linux/drivers/pinctrl
Mika Westerberg 31e4329f99 pinctrl: baytrail: Rework interrupt handling
Instead of handling everything in the driver's first level interrupt
handler, we can take advantage of already existing flow handlers that are
provided by the IRQ core.

This changes the functionality a bit also. Previously the driver looped
over pending interrupts in a single loop, restarting the loop if some
interrupt changed state. This caused problem with Lenovo Thinkpad 10
digitizer that it was not able to deassert the interrupt before the driver
disabled the interrupt for good (looplimit was exhausted).

Rework the interrupt handling logic a bit so that we provide proper mask,
ack and unmask operations in terms of Baytrail GPIO hardware and loop over
pending interrupts only once. If the interrupt remains asserted the first
level handler will be re-triggered automatically.

Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2015-03-06 12:22:41 +01:00
..
berlin pinctrl: berlin: drop owner assignment from platform_drivers 2014-10-20 16:21:21 +02:00
freescale pinctrl: imx25: fix numbering for pins 2015-02-03 14:02:55 +01:00
intel pinctrl: baytrail: Rework interrupt handling 2015-03-06 12:22:41 +01:00
meson pinctrl: add driver for Amlogic Meson SoCs 2015-01-26 09:13:00 +01:00
mvebu pinctrl: dove: Constify struct regmap_config and of_device_id 2015-01-14 14:21:53 +01:00
nomadik pinctrl: pinconf-generic: Allow driver to specify DT params 2015-01-11 22:32:19 +01:00
qcom pinctrl: qcom: delete pin_config_get/set pinconf operations 2015-01-30 14:36:33 +01:00
samsung pinctrl: exynos: Add AUDIO pin controller for exynos7 2015-01-19 11:04:47 +01:00
sh-pfc sh-pfc: emev2 - Fix mangled author name 2015-02-05 14:51:34 +01:00
sirf pinctrl: sirf: drop marco support 2015-01-14 14:21:54 +01:00
spear Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
sunxi pinctrl: sun6i: Add A31s pinctrl support 2015-01-14 14:21:52 +01:00
vt8500 pinctrl: vt8500: drop owner assignment from platform_drivers 2014-10-20 16:21:26 +02:00
core.c pinctrl: Fix two deadlocks 2015-01-14 14:20:33 +01:00
core.h
devicetree.c
devicetree.h
Kconfig pinctrl: add driver for Amlogic Meson SoCs 2015-01-26 09:13:00 +01:00
Makefile pinctrl: add driver for Amlogic Meson SoCs 2015-01-26 09:13:00 +01:00
pinconf-generic.c pinctrl: pinconf-generic: loose DT dependence 2015-01-14 14:21:38 +01:00
pinconf.c pinctrl: pinconf-generic: Allow driver to specify DT params 2015-01-11 22:32:19 +01:00
pinconf.h pinctrl: pinconf-generic: Allow driver to specify DT params 2015-01-11 22:32:19 +01:00
pinctrl-adi2-bf54x.c
pinctrl-adi2-bf60x.c
pinctrl-adi2.c
pinctrl-adi2.h
pinctrl-as3722.c
pinctrl-at91.c pinctrl: at91: allow to have disabled gpio bank 2015-01-26 09:13:36 +01:00
pinctrl-at91.h pinctrl: at91: use own header 2014-10-29 09:28:35 +01:00
pinctrl-bcm281xx.c pinctrl: bcm281xx: Constify struct regmap_config 2015-01-14 14:21:53 +01:00
pinctrl-bcm2835.c
pinctrl-coh901.c
pinctrl-coh901.h
pinctrl-falcon.c staging: drivers: pinctrl: Fixed checkpatch.pl warnings 2015-01-21 11:02:26 +01:00
pinctrl-lantiq.c
pinctrl-lantiq.h
pinctrl-palmas.c
pinctrl-rockchip.c pinctrl: rockchip: Only mask interrupts; never disable 2015-01-30 10:38:36 +01:00
pinctrl-single.c
pinctrl-st.c pinctrl: st: Add irq_disable hook to st_gpio_irqchip 2015-01-07 10:44:39 +01:00
pinctrl-tb10x.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
pinctrl-tegra20.c
pinctrl-tegra30.c
pinctrl-tegra114.c
pinctrl-tegra124.c
pinctrl-tegra-xusb.c USB patches for 3.19-rc1 2014-12-14 14:57:16 -08:00
pinctrl-tegra.c
pinctrl-tegra.h
pinctrl-tz1090-pdc.c pinctrl: pinconf-generic: Allow driver to specify DT params 2015-01-11 22:32:19 +01:00
pinctrl-tz1090.c pinctrl: pinconf-generic: Allow driver to specify DT params 2015-01-11 22:32:19 +01:00
pinctrl-u300.c
pinctrl-utils.c
pinctrl-utils.h
pinctrl-xway.c pinctrl: lantiq: remove bogus of_gpio_chip_add 2015-01-14 14:20:46 +01:00
pinctrl-zynq.c pinctrl: hide PCONFDUMP in #ifdef 2015-01-30 14:30:59 +01:00
pinmux.c
pinmux.h