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