# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/timer/nuvoton,npcm7xx-timer.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Nuvoton NPCM7xx timer

maintainers:
  - Jonathan Neuschäfer <j.neuschaefer@gmx.net>
  - Tomer Maimon <tmaimon77@gmail.com>

properties:
  compatible:
    enum:
      - nuvoton,wpcm450-timer  # for Hermon WPCM450
      - nuvoton,npcm750-timer  # for Poleg NPCM750
      - nuvoton,npcm845-timer  # for Arbel NPCM845

  reg:
    maxItems: 1

  interrupts:
    items:
      - description: The timer interrupt of timer 0

  clocks:
    items:
      - description: The reference clock for timer 0
      - description: The reference clock for timer 1
      - description: The reference clock for timer 2
      - description: The reference clock for timer 3
      - description: The reference clock for timer 4
    minItems: 1

required:
  - compatible
  - reg
  - interrupts
  - clocks

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/clock/nuvoton,npcm7xx-clock.h>
    timer@f0008000 {
        compatible = "nuvoton,npcm750-timer";
        interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
        reg = <0xf0008000 0x50>;
        clocks = <&clk NPCM7XX_CLK_TIMER>;
    };
