1*ae5de77eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*ae5de77eSEmmanuel Vadot%YAML 1.2 3*ae5de77eSEmmanuel Vadot--- 4*ae5de77eSEmmanuel Vadot$id: http://devicetree.org/schemas/timer/econet,en751221-timer.yaml# 5*ae5de77eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*ae5de77eSEmmanuel Vadot 7*ae5de77eSEmmanuel Vadottitle: EcoNet EN751221 High Precision Timer (HPT) 8*ae5de77eSEmmanuel Vadot 9*ae5de77eSEmmanuel Vadotmaintainers: 10*ae5de77eSEmmanuel Vadot - Caleb James DeLisle <cjd@cjdns.fr> 11*ae5de77eSEmmanuel Vadot 12*ae5de77eSEmmanuel Vadotdescription: 13*ae5de77eSEmmanuel Vadot The EcoNet High Precision Timer (HPT) is a timer peripheral found in various 14*ae5de77eSEmmanuel Vadot EcoNet SoCs, including the EN751221 and EN751627 families. It provides per-VPE 15*ae5de77eSEmmanuel Vadot count/compare registers and a per-CPU control register, with a single interrupt 16*ae5de77eSEmmanuel Vadot line using a percpu-devid interrupt mechanism. 17*ae5de77eSEmmanuel Vadot 18*ae5de77eSEmmanuel Vadotproperties: 19*ae5de77eSEmmanuel Vadot compatible: 20*ae5de77eSEmmanuel Vadot oneOf: 21*ae5de77eSEmmanuel Vadot - const: econet,en751221-timer 22*ae5de77eSEmmanuel Vadot - items: 23*ae5de77eSEmmanuel Vadot - const: econet,en751627-timer 24*ae5de77eSEmmanuel Vadot - const: econet,en751221-timer 25*ae5de77eSEmmanuel Vadot 26*ae5de77eSEmmanuel Vadot reg: 27*ae5de77eSEmmanuel Vadot minItems: 1 28*ae5de77eSEmmanuel Vadot maxItems: 2 29*ae5de77eSEmmanuel Vadot 30*ae5de77eSEmmanuel Vadot interrupts: 31*ae5de77eSEmmanuel Vadot maxItems: 1 32*ae5de77eSEmmanuel Vadot description: A percpu-devid timer interrupt shared across CPUs. 33*ae5de77eSEmmanuel Vadot 34*ae5de77eSEmmanuel Vadot clocks: 35*ae5de77eSEmmanuel Vadot maxItems: 1 36*ae5de77eSEmmanuel Vadot 37*ae5de77eSEmmanuel Vadotrequired: 38*ae5de77eSEmmanuel Vadot - compatible 39*ae5de77eSEmmanuel Vadot - reg 40*ae5de77eSEmmanuel Vadot - interrupts 41*ae5de77eSEmmanuel Vadot - clocks 42*ae5de77eSEmmanuel Vadot 43*ae5de77eSEmmanuel VadotallOf: 44*ae5de77eSEmmanuel Vadot - if: 45*ae5de77eSEmmanuel Vadot properties: 46*ae5de77eSEmmanuel Vadot compatible: 47*ae5de77eSEmmanuel Vadot contains: 48*ae5de77eSEmmanuel Vadot const: econet,en751627-timer 49*ae5de77eSEmmanuel Vadot then: 50*ae5de77eSEmmanuel Vadot properties: 51*ae5de77eSEmmanuel Vadot reg: 52*ae5de77eSEmmanuel Vadot items: 53*ae5de77eSEmmanuel Vadot - description: VPE timers 0 and 1 54*ae5de77eSEmmanuel Vadot - description: VPE timers 2 and 3 55*ae5de77eSEmmanuel Vadot else: 56*ae5de77eSEmmanuel Vadot properties: 57*ae5de77eSEmmanuel Vadot reg: 58*ae5de77eSEmmanuel Vadot items: 59*ae5de77eSEmmanuel Vadot - description: VPE timers 0 and 1 60*ae5de77eSEmmanuel Vadot 61*ae5de77eSEmmanuel VadotadditionalProperties: false 62*ae5de77eSEmmanuel Vadot 63*ae5de77eSEmmanuel Vadotexamples: 64*ae5de77eSEmmanuel Vadot - | 65*ae5de77eSEmmanuel Vadot timer@1fbf0400 { 66*ae5de77eSEmmanuel Vadot compatible = "econet,en751627-timer", "econet,en751221-timer"; 67*ae5de77eSEmmanuel Vadot reg = <0x1fbf0400 0x100>, <0x1fbe0000 0x100>; 68*ae5de77eSEmmanuel Vadot interrupt-parent = <&intc>; 69*ae5de77eSEmmanuel Vadot interrupts = <30>; 70*ae5de77eSEmmanuel Vadot clocks = <&hpt_clock>; 71*ae5de77eSEmmanuel Vadot }; 72*ae5de77eSEmmanuel Vadot - | 73*ae5de77eSEmmanuel Vadot timer@1fbf0400 { 74*ae5de77eSEmmanuel Vadot compatible = "econet,en751221-timer"; 75*ae5de77eSEmmanuel Vadot reg = <0x1fbe0400 0x100>; 76*ae5de77eSEmmanuel Vadot interrupt-parent = <&intc>; 77*ae5de77eSEmmanuel Vadot interrupts = <30>; 78*ae5de77eSEmmanuel Vadot clocks = <&hpt_clock>; 79*ae5de77eSEmmanuel Vadot }; 80*ae5de77eSEmmanuel Vadot... 81