linux/drivers/gpio
Andrew Lunn 7ae710f9f8 gpio: vf610: Mask all GPIO interrupts
On SoC reset all GPIO interrupts are disable. However, if kexec is
used to boot into a new kernel, the SoC does not experience a
reset. Hence GPIO interrupts can be left enabled from the previous
kernel. It is then possible for the interrupt to fire before an
interrupt handler is registered, resulting in the kernel complaining
of an "unexpected IRQ trap", the interrupt is never cleared, and so
fires again, resulting in an interrupt storm.

Disable all GPIO interrupts before registering the GPIO IRQ chip.

Fixes: 7f2691a196 ("gpio: vf610: add gpiolib/IRQ chip driver for Vybrid")
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Acked-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2019-01-28 15:28:43 +01:00
..
gpio-74x164.c
gpio-74xx-mmio.c
gpio-104-dio-48e.c gpio: 104-dio-48e: Mask read inputs for get_multiple 2018-11-05 08:54:41 +01:00
gpio-104-idi-48.c gpio: 104-idi-48e: Mask the read inputs for get_multiple 2018-11-05 08:54:41 +01:00
gpio-104-idio-16.c
gpio-adnp.c
gpio-adp5520.c
gpio-adp5588.c This is the bulk of GPIO changes for the v4.20 series: 2018-10-23 08:45:05 +01:00
gpio-altera-a10sr.c gpio: altera-a10sr: Set proper output level for direction_output 2019-01-23 17:24:02 +01:00
gpio-altera.c
gpio-amd8111.c
gpio-amdpt.c
gpio-arizona.c
gpio-aspeed.c gpio: aspeed: remove duplicated statement 2018-12-21 11:14:11 +01:00
gpio-ath79.c
gpio-bcm-kona.c
gpio-bd9571mwv.c
gpio-brcmstb.c
gpio-bt8xx.c
gpio-cadence.c gpio: Add Cadence GPIO driver 2018-12-21 11:41:00 +01:00
gpio-clps711x.c
gpio-creg-snps.c GPIO: add single-register GPIO via CREG driver 2018-10-10 09:21:06 +02:00
gpio-crystalcove.c
gpio-cs5535.c
gpio-da9052.c
gpio-da9055.c
gpio-davinci.c gpio: davinci: restore a way to manually specify the GPIO base 2018-11-26 16:45:10 +05:30
gpio-dln2.c
gpio-dwapb.c gpio: gpio-dwapb: simplify getting .driver_data 2018-11-05 08:54:41 +01:00
gpio-eic-sprd.c gpio: sprd: Fix incorrect irq type setting for the async EIC 2019-01-23 17:24:01 +01:00
gpio-em.c
gpio-ep93xx.c
gpio-exar.c
gpio-f7188x.c
gpio-ftgpio010.c
gpio-ge.c
gpio-gpio-mm.c gpio: gpio-mm: Mask read inputs for get_multiple 2018-11-05 08:54:41 +01:00
gpio-grgpio.c drivers/gpio/gpio-grgpio.c: Remove duplicate header 2018-11-19 15:09:22 +01:00
gpio-hlwd.c
gpio-htc-egpio.c
gpio-ich.c gpio: ich: Convert to use SPDX identifier 2018-12-07 17:34:07 +02:00
gpio-intel-mid.c gpio: intel-mid: Convert to use SPDX identifier 2018-12-07 17:34:07 +02:00
gpio-iop.c
gpio-it87.c
gpio-janz-ttl.c
gpio-kempld.c
gpio-ks8695.c gpio: ks8695: Change to use DEFINE_SHOW_ATTRIBUTE macro 2018-12-07 11:10:14 +01:00
gpio-loongson.c
gpio-loongson1.c
gpio-lp873x.c
gpio-lp3943.c
gpio-lp87565.c
gpio-lpc18xx.c gpio: lpc18xx: fix GPIO controller driver build as a module 2018-12-10 09:10:46 +01:00
gpio-lpc32xx.c
gpio-lynxpoint.c intel-gpio for v4.21-1 2018-12-14 14:27:41 +01:00
gpio-madera.c
gpio-max730x.c
gpio-max732x.c
gpio-max3191x.c
gpio-max7300.c
gpio-max7301.c gpio: max7301: fix driver for use with CONFIG_VMAP_STACK 2018-12-21 09:23:45 +01:00
gpio-max77620.c regmap: regmap-irq/gpio-max77620: add level-irq support 2018-12-19 18:35:45 +00:00
gpio-mb86s7x.c
gpio-mc9s08dz60.c
gpio-mc33880.c
gpio-menz127.c
gpio-merrifield.c gpio: merrifield: Convert to use SPDX identifier 2018-12-07 17:34:08 +02:00
gpio-ml-ioh.c
gpio-mm-lantiq.c
gpio-mmio.c
gpio-mockup.c gpio: mockup: fix indicated direction 2018-11-16 23:06:29 +01:00
gpio-mpc8xxx.c
gpio-mpc5200.c
gpio-msic.c
gpio-mt7621.c gpio: mt7621: pass mediatek_gpio_bank_probe() failure up the stack 2018-12-07 10:47:24 +01:00
gpio-mvebu.c This is the bulk of GPIO changes for the v4.21 kernel series: 2018-12-28 20:00:21 -08:00
gpio-mxc.c gpio: mxc: move gpio noirq suspend/resume to syscore phase 2018-11-16 22:56:54 +01:00
gpio-mxs.c gpio: mxs: read pin level directly instead of using .get 2018-12-21 11:29:57 +01:00
gpio-octeon.c
gpio-omap.c This is the bulk of GPIO changes for the v4.21 kernel series: 2018-12-28 20:00:21 -08:00
gpio-palmas.c
gpio-pca953x.c gpio: pca953x: Make symbol 'pca953x_i2c_regmap' static 2019-01-11 09:16:40 +01:00
gpio-pcf857x.c gpio: pcf857x: Fix interrupts on multiple instances 2019-01-23 17:24:01 +01:00
gpio-pch.c gpio: pch: Convert to use SPDX identifier 2018-12-07 17:34:08 +02:00
gpio-pci-idio-16.c gpio: pci-idio-16: Mask read inputs for get_multiple 2018-11-05 08:54:42 +01:00
gpio-pcie-idio-24.c gpio: pcie-idio-24: Mask read inputs for get_multiple 2018-11-05 08:54:42 +01:00
gpio-pisosr.c
gpio-pl061.c gpio: pl061: Move irq_chip definition inside struct pl061 2018-11-05 08:54:42 +01:00
gpio-pmic-eic-sprd.c
gpio-pxa.c gpio: pxa: fix legacy non pinctrl aware builds again 2018-11-16 23:06:29 +01:00
gpio-raspberrypi-exp.c gpio: raspberrypi-exp: decrease refcount on firmware dt node 2018-12-17 15:28:30 +01:00
gpio-rc5t583.c
gpio-rcar.c gpio: rcar: reference device instead of platform device 2018-12-05 22:52:31 +01:00
gpio-rdc321x.c
gpio-reg.c
gpio-sa1100.c
gpio-sama5d2-piobu.c gpio: add driver for SAMA5D2 PIOBU pins 2018-12-21 10:55:57 +01:00
gpio-sch.c gpio: sch: Convert to use SPDX identifier 2018-12-07 17:34:08 +02:00
gpio-sch311x.c gpio: sch311x: clean an indentation issue, remove extraneous space 2018-11-05 08:54:42 +01:00
gpio-siox.c
gpio-sodaville.c gpio: sodaville: Convert to use SPDX identifier 2018-12-07 17:34:08 +02:00
gpio-spear-spics.c
gpio-sprd.c
gpio-sta2x11.c
gpio-stmpe.c
gpio-stp-xway.c
gpio-syscon.c gpio: syscon: Fix possible NULL ptr usage 2018-10-10 10:33:11 +02:00
gpio-tb10x.c
gpio-tc3589x.c
gpio-tegra.c gpio: gpio-tegra: simplify getting .driver_data 2018-11-05 08:54:41 +01:00
gpio-tegra186.c gpio: tegra186: Rename flow variable to type 2018-12-14 14:34:10 +01:00
gpio-thunderx.c
gpio-timberdale.c
gpio-tpic2810.c
gpio-tps6586x.c
gpio-tps65086.c
gpio-tps65218.c
gpio-tps65910.c
gpio-tps65912.c
gpio-tps68470.c
gpio-ts4800.c
gpio-ts4900.c
gpio-ts5500.c
gpio-twl4030.c
gpio-twl6040.c
gpio-ucb1400.c
gpio-uniphier.c gpio: uniphier: convert to SPDX License Identifier 2018-12-07 13:40:28 +01:00
gpio-vf610.c gpio: vf610: Mask all GPIO interrupts 2019-01-28 15:28:43 +01:00
gpio-viperboard.c
gpio-vr41xx.c
gpio-vx855.c
gpio-wcove.c
gpio-winbond.c
gpio-wm831x.c
gpio-wm8350.c
gpio-wm8994.c
gpio-ws16c48.c gpio: ws16c48: Mask read inputs for get_multiple 2018-11-05 08:54:42 +01:00
gpio-xgene-sb.c
gpio-xgene.c
gpio-xilinx.c
gpio-xlp.c
gpio-xra1403.c
gpio-xtensa.c
gpio-zevio.c
gpio-zx.c
gpio-zynq.c gpio: zynq: Report gpio direction at boot 2018-12-07 13:37:25 +01:00
gpiolib-acpi.c gpiolib-acpi: Remove unnecessary WARN_ON from acpi_gpiochip_free_interrupts 2019-01-07 09:23:23 +01:00
gpiolib-devprop.c
gpiolib-devres.c gpio: Add devm_gpiod_unhinge() 2018-12-11 01:04:23 +00:00
gpiolib-legacy.c
gpiolib-of.c gpio/mmc/of: Respect polarity in the device tree 2018-12-17 23:31:07 +01:00
gpiolib-sysfs.c
gpiolib.c gpiolib: fix line event timestamps for nested irqs 2019-01-23 17:24:01 +01:00
gpiolib.h gpio: Export gpiod_get_from_of_node() 2018-12-11 01:04:04 +00:00
Kconfig gpio: sama5d2-piobu: Depend on OF_GPIO 2018-12-22 11:08:06 +01:00
Makefile gpio: Add Cadence GPIO driver 2018-12-21 11:41:00 +01:00
TODO gpio: Add global TODO file for GPIO 2018-11-05 08:54:40 +01:00