On 27/10/2022 18:29:51+0200, Johan Jonker wrote: > > > On 10/27/22 18:26, Sebastian Reichel wrote: > > Hi, > > > > On Thu, Oct 27, 2022 at 06:11:19PM +0200, Johan Jonker wrote: > >> On 10/25/22 00:05, Sebastian Reichel wrote: > >>> 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. > > > > As far as I can tell 32768 has been cargo copied by everyone, but > > the driver is not parsing this at all and I would expect the clock > > API to be used for requesting a specific frequency. > > DT and Linux driver support are 2 different things. > What Linux currently doesn't support might be needed elsewhere. > Yes but being a clock provider is enough for any OS. -- Alexandre Belloni, co-owner and COO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com