Add bindings documentation for brcm,bcm2835-aux-intc and human-readable
declarations for the BCM2835 AUX IRQs.
Signed-off-by: Phil Elwell <[email protected]>
---
.../interrupt-controller/brcm,bcm2835-aux-intc.txt | 28 ++++++++++++++++++++++
.../interrupt-controller/bcm2835-aux-intc.h | 20 ++++++++++++++++
2 files changed, 48 insertions(+)
create mode 100644 Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-aux-intc.txt
create mode 100644 include/dt-bindings/interrupt-controller/bcm2835-aux-intc.h
diff --git a/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-aux-intc.txt b/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-aux-intc.txt
new file mode 100644
index 0000000..f3f895c
--- /dev/null
+++ b/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-aux-intc.txt
@@ -0,0 +1,28 @@
+BCM2835 Auxiliary ("AUXIRQ") Interrupt Controller
+
+The BCM2835 family of SoCs multiplexes the interrupts for peripherals in
+the AUX block into a single IRQ. The AUXIRQ register shows the IRQ status
+of each of the peripherals. Note that there are no masking or clearing
+facilities - interrupts must be enabled and acknowledged in the
+individual peripherals.
+
+Required properties:
+- compatible : Should be "brcm,bcm2835-aux-intc".
+- reg : Specifies base physical address and size of the registers.
+- interrupts : The interrupt number - see
+ bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
+- interrupt-controller : Identifies the node as an interrupt controller
+- #interrupt-cells : Specifies the number of cells needed to encode an
+ interrupt source. The value shall be 1.
+
+ The cell contains the interrupt specifier, as found in
+ include/dt-bindings/interrupt-controller/bcm2835-aux-intc.h. Valid values
+ are 0..2.
+
+Example:
+
+ auxintc: interrupt-controller@7e215000 {
+ compatible = "brcm,bcm2835-aux-intc";
+ reg = <0x7e215000 0x4>;
+ interrupts = <1 29>;
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ };
diff --git a/include/dt-bindings/interrupt-controller/bcm2835-aux-intc.h b/include/dt-bindings/interrupt-controller/bcm2835-aux-intc.h
new file mode 100644
index 0000000..8b9fc12
--- /dev/null
+++ b/include/dt-bindings/interrupt-controller/bcm2835-aux-intc.h
@@ -0,0 +1,20 @@
+/*
+ * Copyright (C) 2017 Raspberry Pi (Trading) Ltd.
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#define BCM2835_AUX_IRQ_UART 0
+#define BCM2835_AUX_IRQ_SPI1 1
+#define BCM2835_AUX_IRQ_SPI2 2
+#define BCM2835_AUX_IRQ_COUNT 3
--
1.9.1
On 06/12/2017 07:25 AM, Phil Elwell wrote:
> Add bindings documentation for brcm,bcm2835-aux-intc and human-readable
> declarations for the BCM2835 AUX IRQs.
>
> Signed-off-by: Phil Elwell <[email protected]>
> ---
> .../interrupt-controller/brcm,bcm2835-aux-intc.txt | 28 ++++++++++++++++++++++
> .../interrupt-controller/bcm2835-aux-intc.h | 20 ++++++++++++++++
> 2 files changed, 48 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-aux-intc.txt
> create mode 100644 include/dt-bindings/interrupt-controller/bcm2835-aux-intc.h
>
> diff --git a/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-aux-intc.txt b/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-aux-intc.txt
> new file mode 100644
> index 0000000..f3f895c
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-aux-intc.txt
> @@ -0,0 +1,28 @@
> +BCM2835 Auxiliary ("AUXIRQ") Interrupt Controller
> +
> +The BCM2835 family of SoCs multiplexes the interrupts for peripherals in
> +the AUX block into a single IRQ. The AUXIRQ register shows the IRQ status
> +of each of the peripherals. Note that there are no masking or clearing
> +facilities - interrupts must be enabled and acknowledged in the
> +individual peripherals.
> +
> +Required properties:
> +- compatible : Should be "brcm,bcm2835-aux-intc".
> +- reg : Specifies base physical address and size of the registers.
> +- interrupts : The interrupt number - see
> + bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
> +- interrupt-controller : Identifies the node as an interrupt controller
> +- #interrupt-cells : Specifies the number of cells needed to encode an
> + interrupt source. The value shall be 1.
> +
> + The cell contains the interrupt specifier, as found in
> + include/dt-bindings/interrupt-controller/bcm2835-aux-intc.h. Valid values
> + are 0..2.
This last sentence is sort of doomed for failure in case there are
additional interrupts being added in the future, referring to
bcm2835-aux-intc.h seems to be good enough IMHO.
Reviewed-by: Florian Fainelli <[email protected]>
--
Florian
On 06/12/2017 07:25 AM, Phil Elwell wrote:
> Add bindings documentation for brcm,bcm2835-aux-intc and human-readable
> declarations for the BCM2835 AUX IRQs.
>
> Signed-off-by: Phil Elwell <[email protected]>
> ---
};
> diff --git a/include/dt-bindings/interrupt-controller/bcm2835-aux-intc.h b/include/dt-bindings/interrupt-controller/bcm2835-aux-intc.h
> new file mode 100644
> index 0000000..8b9fc12
> --- /dev/null
> +++ b/include/dt-bindings/interrupt-controller/bcm2835-aux-intc.h
> @@ -0,0 +1,20 @@
> +/*
> + * Copyright (C) 2017 Raspberry Pi (Trading) Ltd.
> + *
> + * This program is free software; you can redistribute it and/or modify it
> + * under the terms and conditions of the GNU General Public License,
> + * version 2, as published by the Free Software Foundation.
> + *
> + * This program is distributed in the hope it will be useful, but WITHOUT
> + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
> + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
> + * more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * along with this program. If not, see <http://www.gnu.org/licenses/>.
Can we consider another license for this file? Most Device Tree files
seems to be under the ISC license.
Thanks!
--
Florian