Re: [PATCH 1/1] dt-bindings: rtc: convert hym8563 bindings to json-schema

From: Johan Jonker
Date: Thu Oct 27 2022 - 12:11:28 EST




On 10/25/22 00:05, Sebastian Reichel wrote:
> Hi,
>
> On Mon, Oct 24, 2022 at 01:50:49PM -0500, Rob Herring wrote:
>> On Fri, Oct 21, 2022 at 07:59:26PM -0400, Krzysztof Kozlowski wrote:
>>> On 21/10/2022 13:06, Sebastian Reichel wrote:
>>>> Convert RTC binding for Haoyu Microelectronics HYM8563 to Device Tree
>>>> Schema format.
>>>>
>>>> Signed-off-by: Sebastian Reichel <sebastian.reichel@xxxxxxxxxxxxx>
>>>> ---
>>>> .../devicetree/bindings/rtc/haoyu,hym8563.txt | 30 ----------
>>>> .../bindings/rtc/haoyu,hym8563.yaml | 55 +++++++++++++++++++
>>>> 2 files changed, 55 insertions(+), 30 deletions(-)
>>>> delete mode 100644 Documentation/devicetree/bindings/rtc/haoyu,hym8563.txt
>>>> create mode 100644 Documentation/devicetree/bindings/rtc/haoyu,hym8563.yaml
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/rtc/haoyu,hym8563.txt b/Documentation/devicetree/bindings/rtc/haoyu,hym8563.txt
>>>> deleted file mode 100644
>>>> index a8934fe2ab4c..000000000000
>>>> --- a/Documentation/devicetree/bindings/rtc/haoyu,hym8563.txt
>>>> +++ /dev/null
>>>> @@ -1,30 +0,0 @@
>>>> -Haoyu Microelectronics HYM8563 Real Time Clock
>>>> -
>>>> -The HYM8563 provides basic rtc and alarm functionality
>>>> -as well as a clock output of up to 32kHz.
>>>> -
>>>> -Required properties:
>>>> -- compatible: should be: "haoyu,hym8563"
>>>> -- reg: i2c address
>>>> -- #clock-cells: the value should be 0
>>>> -
>>>> -Optional properties:
>>>> -- clock-output-names: From common clock binding
>>>> -- interrupts: rtc alarm/event interrupt
>>>> -
>>>> -Example:
>>>> -
>>>> -hym8563: hym8563@51 {
>>>> - compatible = "haoyu,hym8563";
>>>> - reg = <0x51>;
>>>> -
>>>> - interrupts = <13 IRQ_TYPE_EDGE_FALLING>;
>>>> -
>>>> - #clock-cells = <0>;
>>>> -};
>>>> -
>>>> -device {
>>>> -...
>>>> - clocks = <&hym8563>;
>>>> -...
>>>> -};
>>>> diff --git a/Documentation/devicetree/bindings/rtc/haoyu,hym8563.yaml b/Documentation/devicetree/bindings/rtc/haoyu,hym8563.yaml
>>>> new file mode 100644
>>>> index 000000000000..b0b6126b12dd
>>>> --- /dev/null
>>>> +++ b/Documentation/devicetree/bindings/rtc/haoyu,hym8563.yaml
>>>> @@ -0,0 +1,55 @@
>>>> +# SPDX-License-Identifier: GPL-2.0
>>>
>>> Dual license please. I don't think you copied any content from original
>>> bindings... unless the example?
>>>
>>>> +%YAML 1.2
>>>> +---
>>>> +$id: http://devicetree.org/schemas/rtc/haoyu,hym8563.yaml#
>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>>> +
>>>> +title: Haoyu Microelectronics HYM8563 RTC
>>>> +
>>>> +maintainers:
>>>> + - Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx>
>>>> +
>>>> +properties:
>>>> + compatible:
>>>> + const: haoyu,hym8563
>>>> +
>>>> + reg:
>>>> + maxItems: 1
>>>> +
>>>> + interrupts:
>>>> + maxItems: 1
>>>> +
>>>> + "#clock-cells":
>>>> + const: 0
>>>> +
>>>> + clock-output-names:
>>>> + description: From common clock binding to override the default output clock name.
>>>
>>> You need maxItems for this.
>>>
>>>> +
>>>> + wakeup-source:
>>>> + description: Enables wake up of host system on alarm.
>>>> +
>>>> +allOf:
>>>> + - $ref: rtc.yaml
>>>> +
>>>> +unevaluatedProperties: false
>>>> +
>>>

>>> Would be great if you could also correct DTS using these bindings (see
>>> warning from Rob).
>>
>> It looked to me like 'clock-frequency' should be added to the schema.
>
> I've sent PATCHv2, which removes clock-frequency from all hym8563
> users. My reasoning is, that the old txt binding does not describe
> it and the current Linux driver does not handle it as far as I can
> see.

Didn't note you were doing a conversion as well...
>From my abandonment patch serie

clock-frequency:
enum: [1, 32, 1024, 32768]

The data sheet shows that it can generate 4 different frequencies.
Rockchip mostly uses 32768, but that doesn't mean someone else is not alowed to set what he/she prefers.

Johan

>
> https://lore.kernel.org/all/20221024165549.74574-1-sebastian.reichel@xxxxxxxxxxxxx/
>
> -- Sebastian