Message ID | 20201107081420.60325-26-damien.lemoal@wdc.com |
---|---|
State | New |
Headers | show |
Series | None | expand |
On Sat, Nov 07, 2020 at 05:14:13PM +0900, Damien Le Moal wrote: > Document the device tree bindings for the Kendryte K210 SoC reset > controller driver in > Documentation/devicetree/bindings/reset/kendryte,k210-rst.yaml. > > Signed-off-by: Damien Le Moal <damien.lemoal@wdc.com> > --- > .../bindings/reset/kendryte,k210-rst.yaml | 78 +++++++++++++++++++ > 1 file changed, 78 insertions(+) > create mode 100644 Documentation/devicetree/bindings/reset/kendryte,k210-rst.yaml > > diff --git a/Documentation/devicetree/bindings/reset/kendryte,k210-rst.yaml b/Documentation/devicetree/bindings/reset/kendryte,k210-rst.yaml > new file mode 100644 > index 000000000000..bdd0bf37bdfb > --- /dev/null > +++ b/Documentation/devicetree/bindings/reset/kendryte,k210-rst.yaml > @@ -0,0 +1,78 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/reset/kendryte,k210-rst.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Kendryte K210 Reset Controller Device Tree Bindings > + > +maintainers: > + - Damien Le Moal <damien.lemoal@wdc.com> > + > +description: | > + Kendryte K210 reset controller driver which support the system controller > + subsystem supplied reset registers for the various peripherals within > + the SoC. > + > + See also: > + - dt-bindings/reset/k210-rst.h > + > +properties: > + compatible: > + allOf: > + - items: > + - const: kendryte,k210-rst > + - const: syscon-reset This is not a generic thing. > + > + regmap: > + maxItems: 1 > + description: phandle of the system controller (sysctl) node > + > + offset: > + maxItems: 1 > + description: peripheral reset register offset in the system controller > + controller register map > + > + mask: > + maxItems: 1 > + description: bit-mask indicating valid reset bits in the reset register You don't need this. Just don't use invalid cell values. > + > + assert-high: > + maxItems: 1 > + description: bit value to write when asserting a reset Should be implied by the compatible string. > + > + '#reset-cells': > + const: 1 > + > +required: > + - '#reset-cells' > + - compatible > + - regmap > + - offset > + - mask > + - assert-high > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/mfd/k210-sysctl.h> > + #include <dt-bindings/reset/k210-rst.h> > + > + sysctl: system-controller@50440000 { > + #address-cells = <1>; > + #size-cells = <1>; > + compatible = "kendryte,k210-sysctl", > + "syscon", "simple-mfd"; > + reg = <0x50440000 0x1000>; > + /* ... */ > + sysrst: reset-controller { > + compatible = "kendryte,k210-rst", > + "syscon-reset"; > + #reset-cells = <1>; > + regmap = <&sysctl>; That's just the parent node, you don't need this. > + offset = <K210_SYSCTL_PERI_RESET>; Use 'reg'. > + mask = <0x27FFFFFF>; > + assert-high = <1>; > + }; > + }; > -- > 2.28.0 >
diff --git a/Documentation/devicetree/bindings/reset/kendryte,k210-rst.yaml b/Documentation/devicetree/bindings/reset/kendryte,k210-rst.yaml new file mode 100644 index 000000000000..bdd0bf37bdfb --- /dev/null +++ b/Documentation/devicetree/bindings/reset/kendryte,k210-rst.yaml @@ -0,0 +1,78 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/reset/kendryte,k210-rst.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Kendryte K210 Reset Controller Device Tree Bindings + +maintainers: + - Damien Le Moal <damien.lemoal@wdc.com> + +description: | + Kendryte K210 reset controller driver which support the system controller + subsystem supplied reset registers for the various peripherals within + the SoC. + + See also: + - dt-bindings/reset/k210-rst.h + +properties: + compatible: + allOf: + - items: + - const: kendryte,k210-rst + - const: syscon-reset + + regmap: + maxItems: 1 + description: phandle of the system controller (sysctl) node + + offset: + maxItems: 1 + description: peripheral reset register offset in the system controller + controller register map + + mask: + maxItems: 1 + description: bit-mask indicating valid reset bits in the reset register + + assert-high: + maxItems: 1 + description: bit value to write when asserting a reset + + '#reset-cells': + const: 1 + +required: + - '#reset-cells' + - compatible + - regmap + - offset + - mask + - assert-high + +additionalProperties: false + +examples: + - | + #include <dt-bindings/mfd/k210-sysctl.h> + #include <dt-bindings/reset/k210-rst.h> + + sysctl: system-controller@50440000 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "kendryte,k210-sysctl", + "syscon", "simple-mfd"; + reg = <0x50440000 0x1000>; + /* ... */ + sysrst: reset-controller { + compatible = "kendryte,k210-rst", + "syscon-reset"; + #reset-cells = <1>; + regmap = <&sysctl>; + offset = <K210_SYSCTL_PERI_RESET>; + mask = <0x27FFFFFF>; + assert-high = <1>; + }; + };
Document the device tree bindings for the Kendryte K210 SoC reset controller driver in Documentation/devicetree/bindings/reset/kendryte,k210-rst.yaml. Signed-off-by: Damien Le Moal <damien.lemoal@wdc.com> --- .../bindings/reset/kendryte,k210-rst.yaml | 78 +++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 Documentation/devicetree/bindings/reset/kendryte,k210-rst.yaml