Commit ae18e254 authored by Akhila YS's avatar Akhila YS Committed by Claudiu Beznea
Browse files

dt-bindings: arm: atmel,at91rm9200-st: convert to DT schema



Convert System Timer binding to YAML format.
Changes during conversion:
- Add "#address-cells" and "#size-cells" to the properties and required as
  watchdog is defined as a child node to the timer parent node.
- Define watchdog as a pattern property along with unit address in
  examples.

Acked-by: default avatarConor Dooley <conor.dooley@microchip.com>
Signed-off-by: default avatarAkhila YS <akhilayalmati@gmail.com>
Link: https://lore.kernel.org/r/20260227-arm-microchip-v4-4-7e2ae1c5b5d6@gmail.com


Signed-off-by: default avatarClaudiu Beznea <claudiu.beznea@tuxon.dev>
parent 67f386b2
Loading
Loading
Loading
Loading
+69 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/arm/atmel,at91rm9200-st.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Atmel System Timer

maintainers:
  - Nicolas Ferre <nicolas.ferre@microchip.com>
  - Claudiu Beznea <claudiu.beznea@tuxon.dev>

description:
  The System Timer (ST) module in AT91RM9200 provides periodic tick and
  alarm capabilities. It is exposed as a simple multi-function device
  (simple-mfd + syscon) because it shares its register space and interrupt
  with other System Controller blocks.

properties:
  compatible:
    items:
      - const: atmel,at91rm9200-st
      - const: syscon
      - const: simple-mfd

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 1

  "#address-cells":
    const: 1

  "#size-cells":
    const: 1

patternProperties:
  "^watchdog@[0-9a-f]+$":
    $ref: /schemas/watchdog/atmel,at91rm9200-wdt.yaml#

required:
  - compatible
  - reg
  - interrupts
  - clocks

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    timer@fffffd00 {
        compatible = "atmel,at91rm9200-st", "syscon", "simple-mfd";
        reg = <0xfffffd00 0x100>;
        interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
        clocks = <&slow_xtal>;
        #address-cells = <1>;
        #size-cells = <1>;

        watchdog@fffffd40 {
            compatible = "atmel,at91rm9200-wdt";
            reg = <0xfffffd40 0x40>;
        };
    };
...
+0 −9
Original line number Diff line number Diff line
Atmel system registers

System Timer (ST) required properties:
- compatible: Should be "atmel,at91rm9200-st", "syscon", "simple-mfd"
- reg: Should contain registers location and length
- interrupts: Should contain interrupt for the ST which is the IRQ line
  shared across all System Controller members.
- clocks: phandle to input clock.
Its subnodes can be:
- watchdog: compatible should be "atmel,at91rm9200-wdt"

RAMC SDRAM/DDR Controller required properties:
- compatible: Should be "atmel,at91rm9200-sdramc", "syscon" or
			"atmel,at91sam9260-sdramc" or