On 26/06/24 19:13, Krzysztof Kozlowski wrote: > On 24/06/2024 07:21, Chris Packham wrote: >> On 24/06/24 16:49, Krzysztof Kozlowski wrote: >>> On 24/06/2024 03:22, Chris Packham wrote: >>>> Add the devicetree schema for the realtek,otto-timer present on a number >>>> of Realtek SoCs. >>>> >>>> Signed-off-by: Chris Packham <chris.packham@xxxxxxxxxxxxxxxxxxx> >>>> --- >>>> >>>> Notes: >>>> Changes in v2: >>>> - Use specific compatible >>> Where? I do not see changes. >> In v1 it was rtl930x-timer, I've updated it to rtl9302-timer > Ah, I thought you wanted to switch from generic fallback to specific > compatible... fine. > >>>> - Remove unnecessary label >>>> - Remove unused irq flags (interrupt controller is one-cell) >>>> - Set minItems for reg and interrupts based on compatible >>>> >>>> .../bindings/timer/realtek,otto-timer.yaml | 66 +++++++++++++++++++ >>>> 1 file changed, 66 insertions(+) >>>> create mode 100644 Documentation/devicetree/bindings/timer/realtek,otto-timer.yaml >>>> >>>> diff --git a/Documentation/devicetree/bindings/timer/realtek,otto-timer.yaml b/Documentation/devicetree/bindings/timer/realtek,otto-timer.yaml >>>> new file mode 100644 >>>> index 000000000000..13ea7aa946fe >>>> --- /dev/null >>>> +++ b/Documentation/devicetree/bindings/timer/realtek,otto-timer.yaml >>>> @@ -0,0 +1,66 @@ >>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >>>> +%YAML 1.2 >>>> +--- >>>> +$id: http://devicetree.org/schemas/timer/realtek,otto-timer.yaml# >>>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>>> + >>>> +title: Realtek Otto SoCs Timer/Counter >>>> + >>>> +description: >>>> + Realtek SoCs support a number of timers/counters. These are used >>>> + as a per CPU clock event generator and an overall CPU clocksource. >>>> + >>>> +maintainers: >>>> + - Chris Packham <chris.packham@xxxxxxxxxxxxxxxxxxx> >>>> + >>>> +properties: >>>> + $nodename: >>>> + pattern: "^timer@[0-9a-f]+$" >>>> + >>>> + compatible: >>>> + items: >>>> + - enum: >>>> + - realtek,rtl9302-timer >>>> + - const: realtek,otto-timer >>>> + >>>> + reg: >>>> + maxItems: 5 >>> Nothing improved. >>> >>>> + >>>> + clocks: >>>> + maxItems: 1 >>>> + >>>> + interrupts: >>>> + maxItems: 5 >>> Nothing improved. >>> >>>> + >>>> +allOf: >>>> + - if: >>>> + properties: >>>> + compatible: >>>> + contains: >>>> + const: realtek,rtl9302-timer >>>> + then: >>>> + properties: >>>> + reg: >>>> + minItems: 2 >>>> + interrupts: >>>> + minItems: 2 >>> No, that's just incorrect. You do not have more than one variant, so it >>> is just 2 items. Or 5 items, not 2-5. >> I've been told in the past that the device-tree should describe the >> hardware. Which in this case has 5 timers. But I'm also told to give >> them names which I struggle to do because some of them aren't used. > Used as in Linux driver? Does not matter. > >> So do you want something like this: >> >> clocks: >> items: >> - description: CPU0 event clock >> - description: system clock source >> - description: unused >> - description: unused >> - description: unused > No, if your datasheet or any other source of information (e.g. > downstream sources) mention 5 items, then name properly 5 items. > Otherwise how do you know that there are 5, not 2, clocks/interrupts/reg? So just timer0, timer2, ... timer5?