Message ID | 20210415062839.11713-1-zajec5@gmail.com |
---|---|
State | New |
Headers | show |
Series | [robh,dt/next] dt-bindings: mfd: add Broadcom CRU | expand |
On Thu, Apr 15, 2021 at 08:28:39AM +0200, Rafał Miłecki wrote: > From: Rafał Miłecki <rafal@milecki.pl> > > CRU is a block used in e.g. Northstar devices. It can be seen in the > bcm5301x.dtsi and this binding documents its proper usage. > > Signed-off-by: Rafał Miłecki <rafal@milecki.pl> > --- > This is reworked version of the > [PATCH robh next] dt-bindings: bus: add Broadcom CRU > https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20210309142241.16259-1-zajec5@gmail.com/ > --- > .../devicetree/bindings/mfd/brcm,cru.yaml | 46 +++++++++++++++++++ > 1 file changed, 46 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mfd/brcm,cru.yaml > > diff --git a/Documentation/devicetree/bindings/mfd/brcm,cru.yaml b/Documentation/devicetree/bindings/mfd/brcm,cru.yaml > new file mode 100644 > index 000000000000..f5bce6453c33 > --- /dev/null > +++ b/Documentation/devicetree/bindings/mfd/brcm,cru.yaml > @@ -0,0 +1,46 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/mfd/brcm,cru.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Broadcom CRU > + > +maintainers: > + - Rafał Miłecki <rafal@milecki.pl> > + > +description: | > + Broadcom CRU ("Clock and Reset Unit" or "Central Resource Unit") is a hardware > + block grouping smaller blocks. On Broadcom Northstar platform it contains e.g. > + clocks, pinctrl, USB PHY and thermal. As I said before, this needs to be a complete binding. > + > +properties: > + compatible: > + items: > + - enum: > + - brcm,ns-cru > + - const: simple-mfd As of now, it is not a 'simple-mfd' because there are no defined children. > + > + reg: > + description: CRU registers > + > + "#address-cells": > + const: 1 > + > + "#size-cells": > + const: 1 > + > +additionalProperties: true This needs to be 'false' (and then any child nodes defined). > + > +required: > + - reg > + > +examples: > + - | > + cru-bus@1800c100 { > + compatible = "brcm,ns-cru", "simple-mfd"; > + reg = <0x1800c100 0x1d0>; > + ranges; > + #address-cells = <1>; > + #size-cells = <1>; > + }; > -- > 2.26.2 >
On Wed, 19 May 2021 10:20:49 +0200, Rafał Miłecki wrote: > From: Rafał Miłecki <rafal@milecki.pl> > > CRU is a block used in e.g. Northstar devices. It can be seen in the > bcm5301x.dtsi and this binding documents its proper usage. > > Signed-off-by: Rafał Miłecki <rafal@milecki.pl> > --- > V2: Use complete binding & change additionalProperties to false > > NOTICE: this patch is based on top of the linux-next as it requires: > ac5f8197d15c ("dt-bindings: pinctrl: convert Broadcom Northstar to the json-schema") > 08e9fdfbb224 ("dt-bindings: thermal: brcm,ns-thermal: Convert to the json-schema") > AND merged git@github.com:Broadcom/stblinux.git devicetree/next as it requires: > 8f711f68cffd ("dt-bindings: clock: brcm, iproc-clocks: convert to the json-schema") > > This is reworked version of the > [PATCH robh next] dt-bindings: bus: add Broadcom CRU > https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20210309142241.16259-1-zajec5@gmail.com/ > --- > .../devicetree/bindings/mfd/brcm,cru.yaml | 89 +++++++++++++++++++ > 1 file changed, 89 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mfd/brcm,cru.yaml > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' on your patch (DT_CHECKER_FLAGS is new in v5.13): yamllint warnings/errors: dtschema/dtc warnings/errors: Unknown file referenced: [Errno 2] No such file or directory: '/usr/local/lib/python3.8/dist-packages/dtschema/schemas/pinctrl/brcm,ns-pinmux.yaml' xargs: dt-doc-validate: exited with status 255; aborting make[1]: *** Deleting file 'Documentation/devicetree/bindings/mfd/brcm,cru.example.dt.yaml' Unknown file referenced: [Errno 2] No such file or directory: '/usr/local/lib/python3.8/dist-packages/dtschema/schemas/pinctrl/brcm,ns-pinmux.yaml' make[1]: *** [scripts/Makefile.lib:380: Documentation/devicetree/bindings/mfd/brcm,cru.example.dt.yaml] Error 255 make[1]: *** Waiting for unfinished jobs.... make: *** [Makefile:1416: dt_binding_check] Error 2 See https://patchwork.ozlabs.org/patch/1480763 This check can fail if there are any dependencies. The base for a patch series is generally the most recent rc1. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit.
On Wed, May 19, 2021 at 10:20:49AM +0200, Rafał Miłecki wrote: > From: Rafał Miłecki <rafal@milecki.pl> > > CRU is a block used in e.g. Northstar devices. It can be seen in the > bcm5301x.dtsi and this binding documents its proper usage. > > Signed-off-by: Rafał Miłecki <rafal@milecki.pl> > --- > V2: Use complete binding & change additionalProperties to false > > NOTICE: this patch is based on top of the linux-next as it requires: > ac5f8197d15c ("dt-bindings: pinctrl: convert Broadcom Northstar to the json-schema") > 08e9fdfbb224 ("dt-bindings: thermal: brcm,ns-thermal: Convert to the json-schema") > AND merged git@github.com:Broadcom/stblinux.git devicetree/next as it requires: > 8f711f68cffd ("dt-bindings: clock: brcm, iproc-clocks: convert to the json-schema") > > This is reworked version of the > [PATCH robh next] dt-bindings: bus: add Broadcom CRU > https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20210309142241.16259-1-zajec5@gmail.com/ > --- > .../devicetree/bindings/mfd/brcm,cru.yaml | 89 +++++++++++++++++++ > 1 file changed, 89 insertions(+) > create mode 100644 Documentation/devicetree/bindings/mfd/brcm,cru.yaml > > diff --git a/Documentation/devicetree/bindings/mfd/brcm,cru.yaml b/Documentation/devicetree/bindings/mfd/brcm,cru.yaml > new file mode 100644 > index 000000000000..d92424cc8226 > --- /dev/null > +++ b/Documentation/devicetree/bindings/mfd/brcm,cru.yaml > @@ -0,0 +1,89 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/mfd/brcm,cru.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Broadcom CRU > + > +maintainers: > + - Rafał Miłecki <rafal@milecki.pl> > + > +description: | > + Broadcom CRU ("Clock and Reset Unit" or "Central Resource Unit") is a hardware > + block grouping smaller blocks. On Broadcom Northstar platform it contains e.g. > + clocks, pinctrl, USB PHY and thermal. > + > +properties: > + compatible: > + items: > + - enum: > + - brcm,ns-cru > + - const: simple-mfd > + > + reg: > + description: CRU registers > + > + ranges: true > + > + "#address-cells": > + const: 1 > + > + "#size-cells": > + const: 1 > + > + pinctrl: > + $ref: ../pinctrl/brcm,ns-pinmux.yaml > + > +patternProperties: > + '^lcpll0@[a-f0-9]+$': > + $ref: ../clock/brcm,iproc-clocks.yaml > + > + '^genpll@[a-f0-9]+$': > + $ref: ../clock/brcm,iproc-clocks.yaml clock-controller@... for both. With that changed, Reviewed-by: Rob Herring <robh@kernel.org> > + > + '^thermal@[a-f0-9]+$': > + $ref: ../thermal/brcm,ns-thermal.yaml > + > +additionalProperties: false > + > +required: > + - reg > + > +examples: > + - | > + cru-bus@1800c100 { > + compatible = "brcm,ns-cru", "simple-mfd"; > + reg = <0x1800c100 0x1d0>; > + ranges; > + #address-cells = <1>; > + #size-cells = <1>; > + > + lcpll0@100 { > + #clock-cells = <1>; > + compatible = "brcm,nsp-lcpll0"; > + reg = <0x100 0x14>; > + clocks = <&osc>; > + clock-output-names = "lcpll0", "pcie_phy", "sdio", "ddr_phy"; > + }; > + > + genpll@140 { > + #clock-cells = <1>; > + compatible = "brcm,nsp-genpll"; > + reg = <0x140 0x24>; > + clocks = <&osc>; > + clock-output-names = "genpll", "phy", "ethernetclk", "usbclk", > + "iprocfast", "sata1", "sata2"; > + }; > + > + pinctrl { > + compatible = "brcm,bcm4708-pinmux"; > + offset = <0x1c0>; > + }; > + > + thermal@2c0 { > + compatible = "brcm,ns-thermal"; > + reg = <0x2c0 0x10>; > + #thermal-sensor-cells = <0>; > + }; > + }; > -- > 2.26.2 >
diff --git a/Documentation/devicetree/bindings/mfd/brcm,cru.yaml b/Documentation/devicetree/bindings/mfd/brcm,cru.yaml new file mode 100644 index 000000000000..f5bce6453c33 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/brcm,cru.yaml @@ -0,0 +1,46 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mfd/brcm,cru.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Broadcom CRU + +maintainers: + - Rafał Miłecki <rafal@milecki.pl> + +description: | + Broadcom CRU ("Clock and Reset Unit" or "Central Resource Unit") is a hardware + block grouping smaller blocks. On Broadcom Northstar platform it contains e.g. + clocks, pinctrl, USB PHY and thermal. + +properties: + compatible: + items: + - enum: + - brcm,ns-cru + - const: simple-mfd + + reg: + description: CRU registers + + "#address-cells": + const: 1 + + "#size-cells": + const: 1 + +additionalProperties: true + +required: + - reg + +examples: + - | + cru-bus@1800c100 { + compatible = "brcm,ns-cru", "simple-mfd"; + reg = <0x1800c100 0x1d0>; + ranges; + #address-cells = <1>; + #size-cells = <1>; + };