Linux 6.9-rc1
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / timer / rockchip,rk-timer.yaml
1 # SPDX-License-Identifier: GPL-2.0
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/timer/rockchip,rk-timer.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Rockchip Timer
8
9 maintainers:
10   - Daniel Lezcano <daniel.lezcano@linaro.org>
11
12 properties:
13   compatible:
14     oneOf:
15       - const: rockchip,rk3288-timer
16       - const: rockchip,rk3399-timer
17       - items:
18           - enum:
19               - rockchip,rv1108-timer
20               - rockchip,rv1126-timer
21               - rockchip,rk3036-timer
22               - rockchip,rk3128-timer
23               - rockchip,rk3188-timer
24               - rockchip,rk3228-timer
25               - rockchip,rk3229-timer
26               - rockchip,rk3368-timer
27               - rockchip,rk3588-timer
28               - rockchip,px30-timer
29           - const: rockchip,rk3288-timer
30   reg:
31     maxItems: 1
32
33   interrupts:
34     maxItems: 1
35
36   clocks:
37     minItems: 2
38     maxItems: 2
39
40   clock-names:
41     items:
42       - const: pclk
43       - const: timer
44
45 required:
46   - compatible
47   - reg
48   - interrupts
49   - clocks
50   - clock-names
51
52 additionalProperties: false
53
54 examples:
55   - |
56     #include <dt-bindings/interrupt-controller/arm-gic.h>
57     #include <dt-bindings/clock/rk3288-cru.h>
58
59     timer: timer@ff810000 {
60         compatible = "rockchip,rk3288-timer";
61         reg = <0xff810000 0x20>;
62         interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
63         clocks = <&cru PCLK_TIMER>, <&xin24m>;
64         clock-names = "pclk", "timer";
65     };