xref: /linux/Documentation/devicetree/bindings/timer/nxp,s32g2-stm.yaml (revision 6376c0770656f3bdf7f411faf068371b6932aeca)
1*eec34ebbSDaniel Lezcano# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*eec34ebbSDaniel Lezcano%YAML 1.2
3*eec34ebbSDaniel Lezcano---
4*eec34ebbSDaniel Lezcano$id: http://devicetree.org/schemas/timer/nxp,s32g2-stm.yaml#
5*eec34ebbSDaniel Lezcano$schema: http://devicetree.org/meta-schemas/core.yaml#
6*eec34ebbSDaniel Lezcano
7*eec34ebbSDaniel Lezcanotitle: NXP System Timer Module (STM)
8*eec34ebbSDaniel Lezcano
9*eec34ebbSDaniel Lezcanomaintainers:
10*eec34ebbSDaniel Lezcano  - Daniel Lezcano <daniel.lezcano@kernel.org>
11*eec34ebbSDaniel Lezcano
12*eec34ebbSDaniel Lezcanodescription:
13*eec34ebbSDaniel Lezcano  The System Timer Module supports commonly required system and application
14*eec34ebbSDaniel Lezcano  software timing functions. STM includes a 32-bit count-up timer and four
15*eec34ebbSDaniel Lezcano  32-bit compare channels with a separate interrupt source for each channel.
16*eec34ebbSDaniel Lezcano  The timer is driven by the STM module clock divided by an 8-bit prescale
17*eec34ebbSDaniel Lezcano  value.
18*eec34ebbSDaniel Lezcano
19*eec34ebbSDaniel Lezcanoproperties:
20*eec34ebbSDaniel Lezcano  compatible:
21*eec34ebbSDaniel Lezcano    oneOf:
22*eec34ebbSDaniel Lezcano      - const: nxp,s32g2-stm
23*eec34ebbSDaniel Lezcano      - items:
24*eec34ebbSDaniel Lezcano          - const: nxp,s32g3-stm
25*eec34ebbSDaniel Lezcano          - const: nxp,s32g2-stm
26*eec34ebbSDaniel Lezcano
27*eec34ebbSDaniel Lezcano  reg:
28*eec34ebbSDaniel Lezcano    maxItems: 1
29*eec34ebbSDaniel Lezcano
30*eec34ebbSDaniel Lezcano  interrupts:
31*eec34ebbSDaniel Lezcano    maxItems: 1
32*eec34ebbSDaniel Lezcano
33*eec34ebbSDaniel Lezcano  clocks:
34*eec34ebbSDaniel Lezcano    items:
35*eec34ebbSDaniel Lezcano      - description: Counter clock
36*eec34ebbSDaniel Lezcano      - description: Module clock
37*eec34ebbSDaniel Lezcano      - description: Register clock
38*eec34ebbSDaniel Lezcano
39*eec34ebbSDaniel Lezcano  clock-names:
40*eec34ebbSDaniel Lezcano    items:
41*eec34ebbSDaniel Lezcano      - const: counter
42*eec34ebbSDaniel Lezcano      - const: module
43*eec34ebbSDaniel Lezcano      - const: register
44*eec34ebbSDaniel Lezcano
45*eec34ebbSDaniel Lezcanorequired:
46*eec34ebbSDaniel Lezcano  - compatible
47*eec34ebbSDaniel Lezcano  - reg
48*eec34ebbSDaniel Lezcano  - interrupts
49*eec34ebbSDaniel Lezcano  - clocks
50*eec34ebbSDaniel Lezcano  - clock-names
51*eec34ebbSDaniel Lezcano
52*eec34ebbSDaniel LezcanoadditionalProperties: false
53*eec34ebbSDaniel Lezcano
54*eec34ebbSDaniel Lezcanoexamples:
55*eec34ebbSDaniel Lezcano  - |
56*eec34ebbSDaniel Lezcano    #include <dt-bindings/interrupt-controller/arm-gic.h>
57*eec34ebbSDaniel Lezcano
58*eec34ebbSDaniel Lezcano    timer@4011c000 {
59*eec34ebbSDaniel Lezcano        compatible = "nxp,s32g2-stm";
60*eec34ebbSDaniel Lezcano        reg = <0x4011c000 0x3000>;
61*eec34ebbSDaniel Lezcano        interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
62*eec34ebbSDaniel Lezcano        clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>;
63*eec34ebbSDaniel Lezcano        clock-names = "counter", "module", "register";
64*eec34ebbSDaniel Lezcano    };
65