Message ID | 20240131-mbly-clk-v4-7-bcd00510d6a0@bootlin.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Add support for Mobileye EyeQ5 system controller | expand |
On 31/01/2024 17:26, Théo Lebrun wrote: > Add documentation to describe the "Other Logic Block" syscon. > > Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com> > --- > .../bindings/soc/mobileye/mobileye,eyeq5-olb.yaml | 89 ++++++++++++++++++++++ > MAINTAINERS | 1 + > 2 files changed, 90 insertions(+) > ... > +required: > + - compatible > + - reg > + - '#address-cells' > + - '#size-cells' > + - ranges > + > +additionalProperties: false > + > +examples: > + - | > + soc { > + #address-cells = <2>; > + #size-cells = <2>; > + > + system-controller@e00000 { > + compatible = "mobileye,eyeq5-olb", "syscon", "simple-mfd"; > + reg = <0x0 0xe00000 0x0 0x400>; > + #address-cells = <1>; > + #size-cells = <1>; > + ranges = <0x0 0x0 0xe00000 0x400>; If there is going to be any resend: 1. ranges follows reg 2. Use lower-case hex See DTS coding style. > + > + clocks: clock-controller@2c { > + compatible = "mobileye,eyeq5-clk"; > + reg = <0x02C 0x50>, <0x11C 0x04>; > + reg-names = "plls", "ospi"; > + #clock-cells = <1>; > + clocks = <&xtal>; > + clock-names = "ref"; > + }; > + > + reset: reset-controller@0 { 0 is before 2c, keep nodes properly ordered. > + compatible = "mobileye,eyeq5-reset"; > + reg = <0x000 0x0C>, <0x200 0x34>, <0x120 0x04>; > + reg-names = "d0", "d1", "d2"; > + #reset-cells = <2>; > + }; > + > + pinctrl: pinctrl@b0 { > + compatible = "mobileye,eyeq5-pinctrl"; > + reg = <0x0B0 0x30>; This looks incomplete. Your binding mentions children, so provide at least one child. > Best regards, Krzysztof
Hello, On Thu Feb 1, 2024 at 10:36 AM CET, Krzysztof Kozlowski wrote: > On 31/01/2024 17:26, Théo Lebrun wrote: > > Add documentation to describe the "Other Logic Block" syscon. > > > > Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com> > > --- > > .../bindings/soc/mobileye/mobileye,eyeq5-olb.yaml | 89 ++++++++++++++++++++++ > > MAINTAINERS | 1 + > > 2 files changed, 90 insertions(+) > > > > ... > > > +required: > > + - compatible > > + - reg > > + - '#address-cells' > > + - '#size-cells' > > + - ranges > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + soc { > > + #address-cells = <2>; > > + #size-cells = <2>; > > + > > + system-controller@e00000 { > > + compatible = "mobileye,eyeq5-olb", "syscon", "simple-mfd"; > > + reg = <0x0 0xe00000 0x0 0x400>; > > + #address-cells = <1>; > > + #size-cells = <1>; > > + ranges = <0x0 0x0 0xe00000 0x400>; > > If there is going to be any resend: > 1. ranges follows reg > 2. Use lower-case hex > > See DTS coding style. I'm re-reading Documentation/devicetree/bindings/dts-coding-style.rst right now. Thanks. > > > + > > + clocks: clock-controller@2c { > > + compatible = "mobileye,eyeq5-clk"; > > + reg = <0x02C 0x50>, <0x11C 0x04>; > > + reg-names = "plls", "ospi"; > > + #clock-cells = <1>; > > + clocks = <&xtal>; > > + clock-names = "ref"; > > + }; > > + > > + reset: reset-controller@0 { > > 0 is before 2c, keep nodes properly ordered. Indeed. > > + compatible = "mobileye,eyeq5-reset"; > > + reg = <0x000 0x0C>, <0x200 0x34>, <0x120 0x04>; > > + reg-names = "d0", "d1", "d2"; > > + #reset-cells = <2>; > > + }; > > + > > + pinctrl: pinctrl@b0 { > > + compatible = "mobileye,eyeq5-pinctrl"; > > + reg = <0x0B0 0x30>; > > This looks incomplete. Your binding mentions children, so provide at > least one child. Will do. Didn't think about adding a child example to the dt-bindings example. Thanks, -- Théo Lebrun, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
diff --git a/Documentation/devicetree/bindings/soc/mobileye/mobileye,eyeq5-olb.yaml b/Documentation/devicetree/bindings/soc/mobileye/mobileye,eyeq5-olb.yaml new file mode 100644 index 000000000000..92d8e30fdc27 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/mobileye/mobileye,eyeq5-olb.yaml @@ -0,0 +1,89 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/mobileye/mobileye,eyeq5-olb.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Mobileye EyeQ5 SoC system controller + +maintainers: + - Grégory Clement <gregory.clement@bootlin.com> + - Théo Lebrun <theo.lebrun@bootlin.com> + - Vladimir Kondratiev <vladimir.kondratiev@mobileye.com> + +description: + OLB ("Other Logic Block") is a hardware block grouping smaller blocks. Clocks, + resets, pinctrl are being handled from here. + +properties: + compatible: + items: + - const: mobileye,eyeq5-olb + - const: syscon + - const: simple-mfd + + reg: + maxItems: 1 + + '#address-cells': + const: 1 + + '#size-cells': + const: 1 + + ranges: true + +patternProperties: + "^clock-controller@[0-9a-f]+$": + $ref: /schemas/clock/mobileye,eyeq5-clk.yaml# + + "^reset-controller@[0-9a-f]+$": + $ref: /schemas/reset/mobileye,eyeq5-reset.yaml# + + "^pinctrl@[0-9a-f]+$": + $ref: /schemas/pinctrl/mobileye,eyeq5-pinctrl.yaml# + +required: + - compatible + - reg + - '#address-cells' + - '#size-cells' + - ranges + +additionalProperties: false + +examples: + - | + soc { + #address-cells = <2>; + #size-cells = <2>; + + system-controller@e00000 { + compatible = "mobileye,eyeq5-olb", "syscon", "simple-mfd"; + reg = <0x0 0xe00000 0x0 0x400>; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x0 0xe00000 0x400>; + + clocks: clock-controller@2c { + compatible = "mobileye,eyeq5-clk"; + reg = <0x02C 0x50>, <0x11C 0x04>; + reg-names = "plls", "ospi"; + #clock-cells = <1>; + clocks = <&xtal>; + clock-names = "ref"; + }; + + reset: reset-controller@0 { + compatible = "mobileye,eyeq5-reset"; + reg = <0x000 0x0C>, <0x200 0x34>, <0x120 0x04>; + reg-names = "d0", "d1", "d2"; + #reset-cells = <2>; + }; + + pinctrl: pinctrl@b0 { + compatible = "mobileye,eyeq5-pinctrl"; + reg = <0x0B0 0x30>; + }; + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 15c9987af637..886de494df31 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -14790,6 +14790,7 @@ F: Documentation/devicetree/bindings/clock/mobileye,eyeq5-clk.yaml F: Documentation/devicetree/bindings/mips/mobileye.yaml F: Documentation/devicetree/bindings/pinctrl/mobileye,eyeq5-pinctrl.yaml F: Documentation/devicetree/bindings/reset/mobileye,eyeq5-reset.yaml +F: Documentation/devicetree/bindings/soc/mobileye/ F: arch/mips/boot/dts/mobileye/ F: arch/mips/configs/eyeq5_defconfig F: arch/mips/mobileye/board-epm5.its.S
Add documentation to describe the "Other Logic Block" syscon. Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com> --- .../bindings/soc/mobileye/mobileye,eyeq5-olb.yaml | 89 ++++++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 90 insertions(+)