Message ID | 20220126125849.75572-2-nikita@trvn.ru |
---|---|
State | Superseded |
Headers | show |
Series | Clock based PWM output driver | expand |
On 26/01/2022 13:58, Nikita Travkin wrote: > Add YAML devicetree binding for clk based PWM controller > > Signed-off-by: Nikita Travkin <nikita@trvn.ru> > -- > Changes in v2: > - fix the file name. > Changes in v4: > - Use generic node name in the dt bindings example. > --- > .../devicetree/bindings/pwm/clk-pwm.yaml | 45 +++++++++++++++++++ > 1 file changed, 45 insertions(+) > create mode 100644 Documentation/devicetree/bindings/pwm/clk-pwm.yaml > > diff --git a/Documentation/devicetree/bindings/pwm/clk-pwm.yaml b/Documentation/devicetree/bindings/pwm/clk-pwm.yaml > new file mode 100644 > index 000000000000..d3416ba549b5 > --- /dev/null > +++ b/Documentation/devicetree/bindings/pwm/clk-pwm.yaml > @@ -0,0 +1,45 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/pwm/clk-pwm.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Clock based PWM controller > + > +maintainers: > + - Nikita Travkin <nikita@trvn.ru> > + > +description: | > + Some systems have clocks that can be exposed to external devices. > + (e.g. by muxing them to GPIO pins) > + It's often possible to control duty-cycle of such clocks which makes them > + suitable for generating PWM signal. > + > +allOf: > + - $ref: pwm.yaml# > + > +properties: > + compatible: > + const: clk-pwm > + > + clocks: > + description: Clock used to generate the signal. > + maxItems: 1 > + > + "#pwm-cells": > + const: 2 > + > +unevaluatedProperties: false > + > +required: You need a compatible. pwm-cells can be skipped as pwm.yaml will require them. > + - clocks > + > +examples: > + - | > + pwm { > + compatible = "clk-pwm"; > + #pwm-cells = <2>; > + clocks = <&gcc 0>; > + pinctrl-names = "default"; > + pinctrl-0 = <&pwm_clk_flash_default>; > + }; Best regards, Krzysztof
Krzysztof Kozlowski писал(а) 26.01.2022 18:14: > On 26/01/2022 13:58, Nikita Travkin wrote: >> Add YAML devicetree binding for clk based PWM controller >> >> Signed-off-by: Nikita Travkin <nikita@trvn.ru> >> -- >> Changes in v2: >> - fix the file name. >> Changes in v4: >> - Use generic node name in the dt bindings example. >> --- >> .../devicetree/bindings/pwm/clk-pwm.yaml | 45 +++++++++++++++++++ >> 1 file changed, 45 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/pwm/clk-pwm.yaml >> >> diff --git a/Documentation/devicetree/bindings/pwm/clk-pwm.yaml b/Documentation/devicetree/bindings/pwm/clk-pwm.yaml >> new file mode 100644 >> index 000000000000..d3416ba549b5 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/pwm/clk-pwm.yaml >> @@ -0,0 +1,45 @@ >> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/pwm/clk-pwm.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Clock based PWM controller >> + >> +maintainers: >> + - Nikita Travkin <nikita@trvn.ru> >> + >> +description: | >> + Some systems have clocks that can be exposed to external devices. >> + (e.g. by muxing them to GPIO pins) >> + It's often possible to control duty-cycle of such clocks which makes them >> + suitable for generating PWM signal. >> + >> +allOf: >> + - $ref: pwm.yaml# >> + >> +properties: >> + compatible: >> + const: clk-pwm >> + >> + clocks: >> + description: Clock used to generate the signal. >> + maxItems: 1 >> + >> + "#pwm-cells": >> + const: 2 >> + >> +unevaluatedProperties: false >> + >> +required: > > You need a compatible. pwm-cells can be skipped as pwm.yaml will require > them. > Oops, thanks for noticing that, will add. (Though I'd assume compatible to be implicitly required as the schema wouldn't even match otherwise...) Nikita >> + - clocks >> + >> +examples: >> + - | >> + pwm { >> + compatible = "clk-pwm"; >> + #pwm-cells = <2>; >> + clocks = <&gcc 0>; >> + pinctrl-names = "default"; >> + pinctrl-0 = <&pwm_clk_flash_default>; >> + }; > > > Best regards, > Krzysztof
diff --git a/Documentation/devicetree/bindings/pwm/clk-pwm.yaml b/Documentation/devicetree/bindings/pwm/clk-pwm.yaml new file mode 100644 index 000000000000..d3416ba549b5 --- /dev/null +++ b/Documentation/devicetree/bindings/pwm/clk-pwm.yaml @@ -0,0 +1,45 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/pwm/clk-pwm.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Clock based PWM controller + +maintainers: + - Nikita Travkin <nikita@trvn.ru> + +description: | + Some systems have clocks that can be exposed to external devices. + (e.g. by muxing them to GPIO pins) + It's often possible to control duty-cycle of such clocks which makes them + suitable for generating PWM signal. + +allOf: + - $ref: pwm.yaml# + +properties: + compatible: + const: clk-pwm + + clocks: + description: Clock used to generate the signal. + maxItems: 1 + + "#pwm-cells": + const: 2 + +unevaluatedProperties: false + +required: + - clocks + +examples: + - | + pwm { + compatible = "clk-pwm"; + #pwm-cells = <2>; + clocks = <&gcc 0>; + pinctrl-names = "default"; + pinctrl-0 = <&pwm_clk_flash_default>; + };
Add YAML devicetree binding for clk based PWM controller Signed-off-by: Nikita Travkin <nikita@trvn.ru> -- Changes in v2: - fix the file name. Changes in v4: - Use generic node name in the dt bindings example. --- .../devicetree/bindings/pwm/clk-pwm.yaml | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 Documentation/devicetree/bindings/pwm/clk-pwm.yaml