linux/drivers/pinctrl/sunxi
Hans de Goede 6bf00fff3c pinctrl: sunxi: Fix A33 external interrupts not working
commit 5e7515ba78 upstream.

pinctrl-sun8i-a33.c (and the dts) declare only 2 interrupt banks,
where as the closely related a23 has 3 banks. This matches with the
datasheet for the A33 where only interrupt banks B and G are specified
where as the A23 has banks A, B and G.

However the A33 being the A23 derative it is means that the interrupt
configure/status io-addresses for the 2 banks it has are not changed
from the A23, iow they have the same address as if bank A was still
present. Where as the sunxi pinctrl currently tries to use the A23 bank
A addresses for bank B, since the pinctrl code does not know about the
removed bank A.

Add a irq_bank_base parameter and use this where appropriate to take
the missing bank A into account.

This fixes external interrupts not working on the A33 (tested with
an i2c touchscreen controller which uses an external interrupt).

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2016-04-20 15:42:08 +09:00
..
Kconfig pinctrl: sunxi: add allwinner A83T PIO controller support 2015-10-02 04:09:44 -07:00
Makefile pinctrl: sunxi: add allwinner A83T PIO controller support 2015-10-02 04:09:44 -07:00
pinctrl-sun4i-a10.c pinctrl: sun4i: add spdif to pin description. 2015-08-13 16:03:21 +02:00
pinctrl-sun5i-a10s.c pinctrl: sun5i: Fix a10s pwm1 pinctrl mapping 2015-10-02 04:06:01 -07:00
pinctrl-sun5i-a13.c pinctrl: constify of_device_id array 2015-03-27 09:58:35 +01:00
pinctrl-sun6i-a31-r.c pinctrl: sunxi: Add irq pinmuxing to sun6i "r" pincontroller 2015-10-23 10:13:30 +02:00
pinctrl-sun6i-a31.c pinctrl: constify of_device_id array 2015-03-27 09:58:35 +01:00
pinctrl-sun6i-a31s.c pinctrl: Remove .owner field 2015-06-04 10:12:42 +02:00
pinctrl-sun7i-a20.c pinctrl: constify of_device_id array 2015-03-27 09:58:35 +01:00
pinctrl-sun8i-a23-r.c pinctrl: constify of_device_id array 2015-03-27 09:58:35 +01:00
pinctrl-sun8i-a23.c pinctrl: constify of_device_id array 2015-03-27 09:58:35 +01:00
pinctrl-sun8i-a33.c pinctrl: sunxi: Fix A33 external interrupts not working 2016-04-20 15:42:08 +09:00
pinctrl-sun8i-a83t.c pinctrl: sunxi: add allwinner A83T PIO controller support 2015-10-02 04:09:44 -07:00
pinctrl-sun9i-a80.c pinctrl: constify of_device_id array 2015-03-27 09:58:35 +01:00
pinctrl-sunxi.c pinctrl: sunxi: Fix A33 external interrupts not working 2016-04-20 15:42:08 +09:00
pinctrl-sunxi.h pinctrl: sunxi: Fix A33 external interrupts not working 2016-04-20 15:42:08 +09:00