Message ID | 20211206180049.2086907-6-f.fainelli@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Broadcom DT bindings conversion to YAML | expand |
On Mon, Dec 06, 2021 at 10:00:46AM -0800, Florian Fainelli wrote: > Convert the Broadcom AMAC Device Tree binding to YAML to help with > schema and dtbs checking. > > Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> > --- > .../devicetree/bindings/net/brcm,amac.txt | 30 ------- > .../devicetree/bindings/net/brcm,amac.yaml | 88 +++++++++++++++++++ > MAINTAINERS | 2 +- > 3 files changed, 89 insertions(+), 31 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/net/brcm,amac.txt > create mode 100644 Documentation/devicetree/bindings/net/brcm,amac.yaml > > diff --git a/Documentation/devicetree/bindings/net/brcm,amac.txt b/Documentation/devicetree/bindings/net/brcm,amac.txt > deleted file mode 100644 > index 0120ebe93262..000000000000 > --- a/Documentation/devicetree/bindings/net/brcm,amac.txt > +++ /dev/null > @@ -1,30 +0,0 @@ > -Broadcom AMAC Ethernet Controller Device Tree Bindings > -------------------------------------------------------------- > - > -Required properties: > - - compatible: "brcm,amac" > - "brcm,nsp-amac" > - "brcm,ns2-amac" > - - reg: Address and length of the register set for the device. It > - contains the information of registers in the same order as > - described by reg-names > - - reg-names: Names of the registers. > - "amac_base": Address and length of the GMAC registers > - "idm_base": Address and length of the GMAC IDM registers > - (required for NSP and Northstar2) > - "nicpm_base": Address and length of the NIC Port Manager > - registers (required for Northstar2) > - - interrupts: Interrupt number > - > -The MAC address will be determined using the optional properties > -defined in ethernet.txt. > - > -Examples: > - > -amac0: ethernet@18022000 { > - compatible = "brcm,nsp-amac"; > - reg = <0x18022000 0x1000>, > - <0x18110000 0x1000>; > - reg-names = "amac_base", "idm_base"; > - interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>; > -}; > diff --git a/Documentation/devicetree/bindings/net/brcm,amac.yaml b/Documentation/devicetree/bindings/net/brcm,amac.yaml > new file mode 100644 > index 000000000000..d9de68aba7d3 > --- /dev/null > +++ b/Documentation/devicetree/bindings/net/brcm,amac.yaml > @@ -0,0 +1,88 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/net/brcm,amac.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Broadcom AMAC Ethernet Controller Device Tree Bindings > + > +maintainers: > + - Florian Fainelli <f.fainelli@gmail.com> > + > +allOf: > + - $ref: "ethernet-controller.yaml#" > + - if: > + properties: > + compatible: > + contains: > + enum: > + - brcm,amac > + then: > + properties: > + reg: > + minItems: 1 > + maxItems: 2 > + reg-names: > + minItems: 1 > + maxItems: 2 > + items: > + - const: amac_base > + - const: idm_base > + > + - if: > + properties: > + compatible: > + contains: > + enum: > + - brcm,nsp-amac > + then: > + properties: > + reg: > + minItems: 2 > + maxItems: 2 > + reg-names: > + items: > + - const: amac_base > + - const: idm_base > + > + - if: > + properties: > + compatible: > + contains: > + enum: > + - brcm,ns2-amac > + then: > + properties: > + reg: > + minItems: 3 > + maxItems: 3 > + reg-names: > + items: > + - const: amac_base > + - const: idm_base > + - const: nicpm_base Move this to the main section so that the names are only defined once. Then here you can just set the number of items. > + > +properties: > + compatible: > + enum: > + - brcm,amac > + - brcm,nsp-amac > + - brcm,ns2-amac > + > + interrupts: > + maxItems: 1 > + > + > +unevaluatedProperties: false > + > +examples: > + - | > + #include <dt-bindings/interrupt-controller/arm-gic.h> > + > + amac0: ethernet@18022000 { > + compatible = "brcm,nsp-amac"; > + reg = <0x18022000 0x1000>, > + <0x18110000 0x1000>; > + reg-names = "amac_base", "idm_base"; > + interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>; > + }; > diff --git a/MAINTAINERS b/MAINTAINERS > index 5e1064c23f41..404e76d625f1 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -3861,7 +3861,7 @@ M: Rafał Miłecki <rafal@milecki.pl> > M: bcm-kernel-feedback-list@broadcom.com > L: netdev@vger.kernel.org > S: Maintained > -F: Documentation/devicetree/bindings/net/brcm,amac.txt > +F: Documentation/devicetree/bindings/net/brcm,amac.yaml > F: drivers/net/ethernet/broadcom/bgmac* > F: drivers/net/ethernet/broadcom/unimac.h > > -- > 2.25.1 > >
diff --git a/Documentation/devicetree/bindings/net/brcm,amac.txt b/Documentation/devicetree/bindings/net/brcm,amac.txt deleted file mode 100644 index 0120ebe93262..000000000000 --- a/Documentation/devicetree/bindings/net/brcm,amac.txt +++ /dev/null @@ -1,30 +0,0 @@ -Broadcom AMAC Ethernet Controller Device Tree Bindings -------------------------------------------------------------- - -Required properties: - - compatible: "brcm,amac" - "brcm,nsp-amac" - "brcm,ns2-amac" - - reg: Address and length of the register set for the device. It - contains the information of registers in the same order as - described by reg-names - - reg-names: Names of the registers. - "amac_base": Address and length of the GMAC registers - "idm_base": Address and length of the GMAC IDM registers - (required for NSP and Northstar2) - "nicpm_base": Address and length of the NIC Port Manager - registers (required for Northstar2) - - interrupts: Interrupt number - -The MAC address will be determined using the optional properties -defined in ethernet.txt. - -Examples: - -amac0: ethernet@18022000 { - compatible = "brcm,nsp-amac"; - reg = <0x18022000 0x1000>, - <0x18110000 0x1000>; - reg-names = "amac_base", "idm_base"; - interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>; -}; diff --git a/Documentation/devicetree/bindings/net/brcm,amac.yaml b/Documentation/devicetree/bindings/net/brcm,amac.yaml new file mode 100644 index 000000000000..d9de68aba7d3 --- /dev/null +++ b/Documentation/devicetree/bindings/net/brcm,amac.yaml @@ -0,0 +1,88 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/brcm,amac.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Broadcom AMAC Ethernet Controller Device Tree Bindings + +maintainers: + - Florian Fainelli <f.fainelli@gmail.com> + +allOf: + - $ref: "ethernet-controller.yaml#" + - if: + properties: + compatible: + contains: + enum: + - brcm,amac + then: + properties: + reg: + minItems: 1 + maxItems: 2 + reg-names: + minItems: 1 + maxItems: 2 + items: + - const: amac_base + - const: idm_base + + - if: + properties: + compatible: + contains: + enum: + - brcm,nsp-amac + then: + properties: + reg: + minItems: 2 + maxItems: 2 + reg-names: + items: + - const: amac_base + - const: idm_base + + - if: + properties: + compatible: + contains: + enum: + - brcm,ns2-amac + then: + properties: + reg: + minItems: 3 + maxItems: 3 + reg-names: + items: + - const: amac_base + - const: idm_base + - const: nicpm_base + +properties: + compatible: + enum: + - brcm,amac + - brcm,nsp-amac + - brcm,ns2-amac + + interrupts: + maxItems: 1 + + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/arm-gic.h> + + amac0: ethernet@18022000 { + compatible = "brcm,nsp-amac"; + reg = <0x18022000 0x1000>, + <0x18110000 0x1000>; + reg-names = "amac_base", "idm_base"; + interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 5e1064c23f41..404e76d625f1 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -3861,7 +3861,7 @@ M: Rafał Miłecki <rafal@milecki.pl> M: bcm-kernel-feedback-list@broadcom.com L: netdev@vger.kernel.org S: Maintained -F: Documentation/devicetree/bindings/net/brcm,amac.txt +F: Documentation/devicetree/bindings/net/brcm,amac.yaml F: drivers/net/ethernet/broadcom/bgmac* F: drivers/net/ethernet/broadcom/unimac.h
Convert the Broadcom AMAC Device Tree binding to YAML to help with schema and dtbs checking. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> --- .../devicetree/bindings/net/brcm,amac.txt | 30 ------- .../devicetree/bindings/net/brcm,amac.yaml | 88 +++++++++++++++++++ MAINTAINERS | 2 +- 3 files changed, 89 insertions(+), 31 deletions(-) delete mode 100644 Documentation/devicetree/bindings/net/brcm,amac.txt create mode 100644 Documentation/devicetree/bindings/net/brcm,amac.yaml