1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/devfreq/event/rockchip,dfi.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Rockchip DFI
8
9maintainers:
10  - Sascha Hauer <s.hauer@pengutronix.de>
11
12properties:
13  compatible:
14    enum:
15      - rockchip,rk3399-dfi
16      - rockchip,rk3568-dfi
17      - rockchip,rk3588-dfi
18
19  clocks:
20    maxItems: 1
21
22  clock-names:
23    items:
24      - const: pclk_ddr_mon
25
26  interrupts:
27    minItems: 1
28    maxItems: 4
29
30  reg:
31    maxItems: 1
32
33  rockchip,pmu:
34    $ref: /schemas/types.yaml#/definitions/phandle
35    description:
36      Phandle to the syscon managing the "PMU general register files".
37
38required:
39  - compatible
40  - interrupts
41  - reg
42
43if:
44  properties:
45    compatible:
46      contains:
47        enum:
48          - rockchip,rk3399-dfi
49
50then:
51  required:
52    - clocks
53    - clock-names
54
55additionalProperties: false
56
57examples:
58  - |
59    #include <dt-bindings/interrupt-controller/arm-gic.h>
60    #include <dt-bindings/clock/rk3308-cru.h>
61
62    bus {
63      #address-cells = <2>;
64      #size-cells = <2>;
65
66      dfi: dfi@ff630000 {
67        compatible = "rockchip,rk3399-dfi";
68        reg = <0x00 0xff630000 0x00 0x4000>;
69        interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH 0>;
70        rockchip,pmu = <&pmugrf>;
71        clocks = <&cru PCLK_DDR_MON>;
72        clock-names = "pclk_ddr_mon";
73      };
74    };
75