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 >> - 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. So do you want something like this: clocks: items: - description: CPU0 event clock - description: system clock source - description: unused - description: unused - description: unused interrupts: items: - description: CPU0 event clock interrupt - description: system clock source interrupt - description: unused - description: unused - description: unused > > > Best regards, > Krzysztof > >