brcm63xx: implement gpio_to_irq for bcm63xx-gpio

Add support for mapping some GPIO lines to IRQs. GPIO to IRQ mappings
were found out through experimentation, helped by having the GPIO as
output still toggling the IRQ input.

Based-on: http://patchwork.ozlabs.org/patch/660534/
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
This commit is contained in:
Jonas Gorski
2016-12-18 13:54:17 +01:00
parent 94bbd1f057
commit dd7079e79a
8 changed files with 53 additions and 1 deletions

View File

@@ -65,6 +65,10 @@
#gpio-cells = <2>;
ngpios = <18>;
interrupt-parent = <&ext_intc>;
interrupts = <0 0>, <1 0>;
interrupt-names = "gpio1", "gpio2";
};
gpio0: gpio-controller@10000084 {

View File

@@ -72,6 +72,10 @@
#gpio-cells = <2>;
ngpios = <20>;
interrupt-parent = <&periph_intc>;
interrupts = <0 0>, <1 0>, <2 0>, <3 0>;
interrupt-names = "gpio0", "gpio1", "gpio2", "gpio3";
};
gpio0: gpio-controller@100000c4 {

View File

@@ -62,6 +62,11 @@
gpio-controller;
#gpio-cells = <2>;
interrupt-parent = <&ext_intc>;
interrupts = <3 0>, <2 0>, <0 0>, <1 0>;
interrupt-names = "gpio12", "gpio15",
"gpio23", "gpio24";
};
};
};

View File

@@ -78,6 +78,10 @@
#gpio-cells = <2>;
ngpios = <5>;
interrupt-parent = <&ext_intc>;
interrupts = <0 0>, <1 0>, <2 0>, <3 0>;
interrupt-names = "gpio0", "gpio1", "gpio2", "gpio3";
};
gpio0: gpio-controller@fffe0404 {

View File

@@ -94,6 +94,15 @@
#gpio-cells = <2>;
ngpios = <8>;
interrupts-extended = <&ext_intc1 0 0>,
<&ext_intc1 1 0>,
<&ext_intc0 0 0>,
<&ext_intc0 1 0>,
<&ext_intc0 2 0>,
<&ext_intc0 3 0>;
interrupt-names = "gpio0", "gpio1", "gpio2", "gpio3",
"gpio4", "gpio5";
};
gpio0: gpio-controller@fffe0084 {

View File

@@ -80,6 +80,11 @@
gpio-controller;
#gpio-cells = <2>;
interrupt-parent = <&ext_intc>;
interrupts = <0 0>, <1 0>, <2 0>, <3 0>;
interrupt-names = "gpio24", "gpio25",
"gpio26", "gpio27";
};
};
};

View File

@@ -84,6 +84,15 @@
#gpio-cells = <2>;
ngpios = <6>;
interrupts-extended = <&ext_intc1 0 0>,
<&ext_intc1 1 0>,
<&ext_intc0 0 0>,
<&ext_intc0 1 0>,
<&ext_intc0 2 0>,
<&ext_intc0 3 0>;
interrupt-names = "gpio0", "gpio1", "gpio2", "gpio3",
"gpio4", "gpio5";
};
gpio0: gpio-controller@10000084 {