On Thu, Jul 30, 2020 at 10:00:42PM +0900, Daniel Palmer wrote: > Adds a YAML description of the binding for the msc313-intc. > > Signed-off-by: Daniel Palmer <daniel@xxxxxxxx> > Tested-by: Willy Tarreau <w@xxxxxx> > --- > .../mstar,msc313-intc.yaml | 79 +++++++++++++++++++ > MAINTAINERS | 1 + > 2 files changed, 80 insertions(+) > create mode 100644 Documentation/devicetree/bindings/interrupt-controller/mstar,msc313-intc.yaml > > diff --git a/Documentation/devicetree/bindings/interrupt-controller/mstar,msc313-intc.yaml b/Documentation/devicetree/bindings/interrupt-controller/mstar,msc313-intc.yaml > new file mode 100644 > index 000000000000..e87c72d452c3 > --- /dev/null > +++ b/Documentation/devicetree/bindings/interrupt-controller/mstar,msc313-intc.yaml > @@ -0,0 +1,79 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +# Copyright 2020 thingy.jp. > +%YAML 1.2 > +--- > +$id: "http://devicetree.org/schemas/interrupt-controller/mstar,msc313-intc.yaml#" > +$schema: "http://devicetree.org/meta-schemas/core.yaml#" > + > +title: MStar/SigmaStar ARMv7 SoC Interrupt Controller Device Tree Bindings > + > +maintainers: > + - Daniel Palmer <daniel@xxxxxxxxx> > + > +allOf: > + - $ref: /schemas/interrupt-controller.yaml# > + > +properties: > + "#interrupt-cells": > + const: 2 > + > + compatible: > + enum: > + - mstar,msc313-intc-irq > + - mstar,msc313-intc-fiq > + > + reg: > + maxItems: 1 > + > + interrupt-controller: true > + > + mstar,gic-offset: > + description: > + Offset added to the intc irq number to get the parent GIC irq. > + allOf: > + - $ref: /schemas/types.yaml#/definitions/uint32 > + - minimum: 0 > + maximum: 255 > + > + mstar,nr-interrupts: > + description: > + Number of interrupt lines this intc has. Generally, no other interrupt controller needs this type of property, why do you? Can't this be implied by the compatible string? Same question for mstar,gic-offset. > + allOf: > + - $ref: /schemas/types.yaml#/definitions/uint32 > + - minimum: 0 > + maximum: 255 > + > +required: > + - "#interrupt-cells" > + - compatible > + - reg > + - interrupt-controller > + - mstar,gic-offset > + - mstar,nr-interrupts > + > +additionalProperties: false > + > +examples: > + - | > + intc_fiq: intc@201310 { > + compatible = "mstar,msc313-intc-fiq"; > + interrupt-controller; > + reg = <0x201310 0x40>; > + #interrupt-cells = <2>; > + interrupt-parent = <&gic>; > + mstar,gic-offset = <96>; > + mstar,nr-interrupts = <32>; > + }; > + > + - | > + intc_irq: intc@201350 { > + compatible = "mstar,msc313-intc-irq"; > + interrupt-controller; > + reg = <0x201350 0x40>; > + #interrupt-cells = <2>; > + interrupt-parent = <&gic>; > + mstar,gic-offset = <32>; > + mstar,nr-interrupts = <64>; > + }; > + > +... > diff --git a/MAINTAINERS b/MAINTAINERS > index 9b35edac7ef7..cf64b4b90222 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -2140,6 +2140,7 @@ L: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx (moderated for non-subscribers) > S: Maintained > W: http://linux-chenxing.org/ > F: Documentation/devicetree/bindings/arm/mstar/* > +F: Documentation/devicetree/bindings/interrupt-controller/mstar,msc313-intc.yaml > F: arch/arm/boot/dts/infinity*.dtsi > F: arch/arm/boot/dts/mercury*.dtsi > F: arch/arm/boot/dts/mstar-v7.dtsi > -- > 2.27.0 >