Documentation / devicetree / bindings / arm / microchip,sam9x60-pit64b.yaml


Based on kernel version 7.2. Page generated on 2026-08-20 08:41 EST.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/arm/microchip,sam9x60-pit64b.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Microchip PIT64B 64-bit Periodic Interval Timer

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

description:
  The Microchip PIT64B is a 64-bit periodic interval timer used in
  several modern Microchip ARM SoCs including SAM9X60, SAM9X7 and
  SAMA7D65 families. It provides extended timing range, flexible
  clock selection and supports both periodic and one-shot interrupt
  generation modes.

properties:
  compatible:
    oneOf:
      - const: microchip,sam9x60-pit64b
      - items:
          - enum:
              - microchip,sam9x7-pit64b
              - microchip,sama7d65-pit64b
              - microchip,sama7g5-pit64b
          - const: microchip,sam9x60-pit64b

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    minItems: 1
    maxItems: 2

  clock-names:
    minItems: 1
    maxItems: 2
    items:
      enum:
        - pclk
        - gclk

required:
  - compatible
  - reg
  - interrupts
  - clocks

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    #include <dt-bindings/clock/at91.h>
    timer@f0028000 {
        compatible = "microchip,sama7g5-pit64b", "microchip,sam9x60-pit64b";
        reg = <0xf0028000 0x100>;
        interrupts = <37 IRQ_TYPE_LEVEL_HIGH 7>;
        clocks = <&pmc PMC_TYPE_PERIPHERAL 37>, <&pmc PMC_TYPE_GCK 37>;
        clock-names = "pclk", "gclk";
    };
...