Message ID | 20221102225943.157344-1-marex@denx.de |
---|---|
State | Changes Requested, archived |
Headers | show |
Series | [1/2] dt-bindings: rtc: m41t80: Convert text schema to YAML one | expand |
Context | Check | Description |
---|---|---|
robh/checkpatch | warning | total: 0 errors, 3 warnings, 75 lines checked |
robh/patch-applied | success | |
robh/dtbs-check | warning | build log |
robh/dt-meta-schema | success |
On 02/11/2022 18:59, Marek Vasut wrote: > Convert the m41t80 text schema to YAML schema. > No functional change. > > Signed-off-by: Marek Vasut <marex@denx.de> > --- > Cc: Alessandro Zummo <a.zummo@towertech.it> > Cc: Alexandre Belloni <alexandre.belloni@bootlin.com> > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> > Cc: linux-rtc@vger.kernel.org > To: devicetree@vger.kernel.org > --- > .../devicetree/bindings/rtc/rtc-m41t80.txt | 39 ---------- > .../devicetree/bindings/rtc/rtc-m41t80.yaml | 75 +++++++++++++++++++ > 2 files changed, 75 insertions(+), 39 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/rtc/rtc-m41t80.txt > create mode 100644 Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml > > diff --git a/Documentation/devicetree/bindings/rtc/rtc-m41t80.txt b/Documentation/devicetree/bindings/rtc/rtc-m41t80.txt > deleted file mode 100644 > index cdd196b1e9bdb..0000000000000 > --- a/Documentation/devicetree/bindings/rtc/rtc-m41t80.txt > +++ /dev/null > @@ -1,39 +0,0 @@ > -ST M41T80 family of RTC and compatible > - > -Required properties: > -- compatible: should be one of: > - "st,m41t62", > - "st,m41t65", > - "st,m41t80", > - "st,m41t81", > - "st,m41t81s", > - "st,m41t82", > - "st,m41t83", > - "st,m41t84", > - "st,m41t85", > - "st,m41t87", > - "microcrystal,rv4162", > -- reg: I2C bus address of the device > - > -Optional properties: > -- interrupts: rtc alarm interrupt. > -- clock-output-names: From common clock binding to override the default output > - clock name > -- wakeup-source: Enables wake up of host system on alarm > - > -Optional child node: > -- clock: Provide this if the square wave pin is used as boot-enabled fixed clock. > - > -Example: > - rtc@68 { > - compatible = "st,m41t80"; > - reg = <0x68>; > - interrupt-parent = <&UIC0>; > - interrupts = <0x9 0x8>; > - > - clock { > - compatible = "fixed-clock"; > - #clock-cells = <0>; > - clock-frequency = <32768>; > - }; > - }; > diff --git a/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml b/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml > new file mode 100644 > index 0000000000000..7f31a22caec9b > --- /dev/null > +++ b/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml Filename based on compatibles (more or less), so could be: st,m41t80.yaml or: st,m41txx.yaml The "rtc" name can be skipped as it is implied from subsystem folder, unless st,m41txx is a name of some SoC? > @@ -0,0 +1,75 @@ > +# SPDX-License-Identifier: GPL-2.0 > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/rtc/rtc-m41t80.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: ST M41T80 family of RTC and compatible > + > +maintainers: > + - Alexandre Belloni <alexandre.belloni@bootlin.com> > + > +properties: > + compatible: > + enum: > + - st,m41t62 > + - st,m41t65 > + - st,m41t80 > + - st,m41t81 > + - st,m41t81s > + - st,m41t82 > + - st,m41t83 > + - st,m41t84 > + - st,m41t85 > + - st,m41t87 > + - microcrystal,rv4162 > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + "#clock-cells": > + const: 1 Hm, why do you have it? > + > + clock-output-names: > + description: From common clock binding to override the default output clock name. You need maxItems > + > + wakeup-source: > + description: Enables wake up of host system on alarm. Skip the property - it comes from rtc.yaml. > + > + clock: > + type: object > + $ref: /schemas/clock/fixed-clock.yaml# > + properties: > + clock-frequency: > + const: 32768 > + Best regards, Krzysztof
On 11/3/22 14:40, Krzysztof Kozlowski wrote: [...] >> diff --git a/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml b/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml >> new file mode 100644 >> index 0000000000000..7f31a22caec9b >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml > > Filename based on compatibles (more or less), so could be: > st,m41t80.yaml > or: > st,m41txx.yaml > > The "rtc" name can be skipped as it is implied from subsystem folder, > unless st,m41txx is a name of some SoC? [...] >> + reg: >> + maxItems: 1 >> + >> + interrupts: >> + maxItems: 1 >> + >> + "#clock-cells": >> + const: 1 > > Hm, why do you have it? Because of the following warning: $ make dt_binding_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml LINT Documentation/devicetree/bindings DTEX Documentation/devicetree/bindings/rtc/rtc-m41t80.example.dts CHKDT Documentation/devicetree/bindings/processed-schema.json Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml: properties: '#clock-cells' is a dependency of 'clock-output-names' >> + >> + clock-output-names: >> + description: From common clock binding to override the default output clock name. > > You need maxItems Done >> + >> + wakeup-source: >> + description: Enables wake up of host system on alarm. > > Skip the property - it comes from rtc.yaml. Done
On 11/3/22 14:40, Krzysztof Kozlowski wrote: [...] >> diff --git a/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml b/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml >> new file mode 100644 >> index 0000000000000..7f31a22caec9b >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml > > Filename based on compatibles (more or less), so could be: > st,m41t80.yaml > or: > st,m41txx.yaml > > The "rtc" name can be skipped as it is implied from subsystem folder, > unless st,m41txx is a name of some SoC? It's dedicated I2C RTC, a discrete soic8 chip with optional coin cell battery. We cannot really call it m41txx because there are other m41txx chips with different register layouts and thus different RTC drivers: next$ ls -1 drivers/rtc/*m41t* drivers/rtc/rtc-m41t80.c drivers/rtc/rtc-m41t93.c drivers/rtc/rtc-m41t94.c The m41t80 is a sane choice, the m41t80 was the first supported, the other chips are just compatible to it. Whether I should drop the rtc- prefix or not, I will defer that preference to Alexandre . [...]
On 03/11/2022 12:44, Marek Vasut wrote: > On 11/3/22 14:40, Krzysztof Kozlowski wrote: > > [...] > >>> diff --git a/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml b/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml >>> new file mode 100644 >>> index 0000000000000..7f31a22caec9b >>> --- /dev/null >>> +++ b/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml >> >> Filename based on compatibles (more or less), so could be: >> st,m41t80.yaml >> or: >> st,m41txx.yaml >> >> The "rtc" name can be skipped as it is implied from subsystem folder, >> unless st,m41txx is a name of some SoC? > > [...] > >>> + reg: >>> + maxItems: 1 >>> + >>> + interrupts: >>> + maxItems: 1 >>> + >>> + "#clock-cells": >>> + const: 1 >> >> Hm, why do you have it? > > Because of the following warning: > > $ make dt_binding_check > DT_SCHEMA_FILES=Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml > LINT Documentation/devicetree/bindings > DTEX Documentation/devicetree/bindings/rtc/rtc-m41t80.example.dts > CHKDT Documentation/devicetree/bindings/processed-schema.json > Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml: properties: > '#clock-cells' is a dependency of 'clock-output-names' So mention any changes from pure conversion in commit msg. Best regards, Krzysztof
On 03/11/2022 12:48, Marek Vasut wrote: > On 11/3/22 14:40, Krzysztof Kozlowski wrote: > > [...] > >>> diff --git a/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml b/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml >>> new file mode 100644 >>> index 0000000000000..7f31a22caec9b >>> --- /dev/null >>> +++ b/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml >> >> Filename based on compatibles (more or less), so could be: >> st,m41t80.yaml >> or: >> st,m41txx.yaml >> >> The "rtc" name can be skipped as it is implied from subsystem folder, >> unless st,m41txx is a name of some SoC? > > It's dedicated I2C RTC, a discrete soic8 chip with optional coin cell > battery. > > We cannot really call it m41txx because there are other m41txx chips > with different register layouts and thus different RTC drivers: > > next$ ls -1 drivers/rtc/*m41t* > drivers/rtc/rtc-m41t80.c > drivers/rtc/rtc-m41t93.c > drivers/rtc/rtc-m41t94.c > > The m41t80 is a sane choice, the m41t80 was the first supported, the > other chips are just compatible to it. > > Whether I should drop the rtc- prefix or not, I will defer that > preference to Alexandre . so st,m41t80.yaml Best regards, Krzysztof
diff --git a/Documentation/devicetree/bindings/rtc/rtc-m41t80.txt b/Documentation/devicetree/bindings/rtc/rtc-m41t80.txt deleted file mode 100644 index cdd196b1e9bdb..0000000000000 --- a/Documentation/devicetree/bindings/rtc/rtc-m41t80.txt +++ /dev/null @@ -1,39 +0,0 @@ -ST M41T80 family of RTC and compatible - -Required properties: -- compatible: should be one of: - "st,m41t62", - "st,m41t65", - "st,m41t80", - "st,m41t81", - "st,m41t81s", - "st,m41t82", - "st,m41t83", - "st,m41t84", - "st,m41t85", - "st,m41t87", - "microcrystal,rv4162", -- reg: I2C bus address of the device - -Optional properties: -- interrupts: rtc alarm interrupt. -- clock-output-names: From common clock binding to override the default output - clock name -- wakeup-source: Enables wake up of host system on alarm - -Optional child node: -- clock: Provide this if the square wave pin is used as boot-enabled fixed clock. - -Example: - rtc@68 { - compatible = "st,m41t80"; - reg = <0x68>; - interrupt-parent = <&UIC0>; - interrupts = <0x9 0x8>; - - clock { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <32768>; - }; - }; diff --git a/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml b/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml new file mode 100644 index 0000000000000..7f31a22caec9b --- /dev/null +++ b/Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml @@ -0,0 +1,75 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/rtc/rtc-m41t80.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: ST M41T80 family of RTC and compatible + +maintainers: + - Alexandre Belloni <alexandre.belloni@bootlin.com> + +properties: + compatible: + enum: + - st,m41t62 + - st,m41t65 + - st,m41t80 + - st,m41t81 + - st,m41t81s + - st,m41t82 + - st,m41t83 + - st,m41t84 + - st,m41t85 + - st,m41t87 + - microcrystal,rv4162 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + "#clock-cells": + const: 1 + + clock-output-names: + description: From common clock binding to override the default output clock name. + + wakeup-source: + description: Enables wake up of host system on alarm. + + clock: + type: object + $ref: /schemas/clock/fixed-clock.yaml# + properties: + clock-frequency: + const: 32768 + +allOf: + - $ref: rtc.yaml + +unevaluatedProperties: false + +required: + - compatible + - reg + +examples: + - | + i2c { + #address-cells = <1>; + #size-cells = <0>; + rtc@68 { + compatible = "st,m41t80"; + reg = <0x68>; + interrupt-parent = <&UIC0>; + interrupts = <0x9 0x8>; + + clock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <32768>; + }; + }; + };
Convert the m41t80 text schema to YAML schema. No functional change. Signed-off-by: Marek Vasut <marex@denx.de> --- Cc: Alessandro Zummo <a.zummo@towertech.it> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com> Cc: Rob Herring <robh+dt@kernel.org> Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> Cc: linux-rtc@vger.kernel.org To: devicetree@vger.kernel.org --- .../devicetree/bindings/rtc/rtc-m41t80.txt | 39 ---------- .../devicetree/bindings/rtc/rtc-m41t80.yaml | 75 +++++++++++++++++++ 2 files changed, 75 insertions(+), 39 deletions(-) delete mode 100644 Documentation/devicetree/bindings/rtc/rtc-m41t80.txt create mode 100644 Documentation/devicetree/bindings/rtc/rtc-m41t80.yaml