1eef691c8STai Nguyen* APM X-Gene SoC PMU bindings
2eef691c8STai Nguyen
3eef691c8STai NguyenThis is APM X-Gene SoC PMU (Performance Monitoring Unit) module.
4eef691c8STai NguyenThe following PMU devices are supported:
5eef691c8STai Nguyen
6eef691c8STai Nguyen  L3C			- L3 cache controller
7eef691c8STai Nguyen  IOB			- IO bridge
8eef691c8STai Nguyen  MCB			- Memory controller bridge
9eef691c8STai Nguyen  MC			- Memory controller
10eef691c8STai Nguyen
11eef691c8STai NguyenThe following section describes the SoC PMU DT node binding.
12eef691c8STai Nguyen
13eef691c8STai NguyenRequired properties:
14eef691c8STai Nguyen- compatible		: Shall be "apm,xgene-pmu" for revision 1 or
15eef691c8STai Nguyen                          "apm,xgene-pmu-v2" for revision 2.
16eef691c8STai Nguyen- regmap-csw		: Regmap of the CPU switch fabric (CSW) resource.
17eef691c8STai Nguyen- regmap-mcba		: Regmap of the MCB-A (memory bridge) resource.
18eef691c8STai Nguyen- regmap-mcbb		: Regmap of the MCB-B (memory bridge) resource.
19eef691c8STai Nguyen- reg			: First resource shall be the CPU bus PMU resource.
20eef691c8STai Nguyen- interrupts            : Interrupt-specifier for PMU IRQ.
21eef691c8STai Nguyen
22eef691c8STai NguyenRequired properties for L3C subnode:
23eef691c8STai Nguyen- compatible		: Shall be "apm,xgene-pmu-l3c".
24eef691c8STai Nguyen- reg			: First resource shall be the L3C PMU resource.
25eef691c8STai Nguyen
26eef691c8STai NguyenRequired properties for IOB subnode:
27eef691c8STai Nguyen- compatible		: Shall be "apm,xgene-pmu-iob".
28eef691c8STai Nguyen- reg			: First resource shall be the IOB PMU resource.
29eef691c8STai Nguyen
30eef691c8STai NguyenRequired properties for MCB subnode:
31eef691c8STai Nguyen- compatible		: Shall be "apm,xgene-pmu-mcb".
32eef691c8STai Nguyen- reg			: First resource shall be the MCB PMU resource.
33eef691c8STai Nguyen- enable-bit-index	: The bit indicates if the according MCB is enabled.
34eef691c8STai Nguyen
35eef691c8STai NguyenRequired properties for MC subnode:
36eef691c8STai Nguyen- compatible		: Shall be "apm,xgene-pmu-mc".
37eef691c8STai Nguyen- reg			: First resource shall be the MC PMU resource.
38eef691c8STai Nguyen- enable-bit-index	: The bit indicates if the according MC is enabled.
39eef691c8STai Nguyen
40eef691c8STai NguyenExample:
41eef691c8STai Nguyen	csw: csw@7e200000 {
42eef691c8STai Nguyen		compatible = "apm,xgene-csw", "syscon";
43eef691c8STai Nguyen		reg = <0x0 0x7e200000 0x0 0x1000>;
44eef691c8STai Nguyen	};
45eef691c8STai Nguyen
46eef691c8STai Nguyen	mcba: mcba@7e700000 {
47eef691c8STai Nguyen		compatible = "apm,xgene-mcb", "syscon";
48eef691c8STai Nguyen		reg = <0x0 0x7e700000 0x0 0x1000>;
49eef691c8STai Nguyen	};
50eef691c8STai Nguyen
51eef691c8STai Nguyen	mcbb: mcbb@7e720000 {
52eef691c8STai Nguyen		compatible = "apm,xgene-mcb", "syscon";
53eef691c8STai Nguyen		reg = <0x0 0x7e720000 0x0 0x1000>;
54eef691c8STai Nguyen	};
55eef691c8STai Nguyen
56eef691c8STai Nguyen	pmu: pmu@78810000 {
57eef691c8STai Nguyen		compatible = "apm,xgene-pmu-v2";
58eef691c8STai Nguyen		#address-cells = <2>;
59eef691c8STai Nguyen		#size-cells = <2>;
60eef691c8STai Nguyen		ranges;
61eef691c8STai Nguyen		regmap-csw = <&csw>;
62eef691c8STai Nguyen		regmap-mcba = <&mcba>;
63eef691c8STai Nguyen		regmap-mcbb = <&mcbb>;
64eef691c8STai Nguyen		reg = <0x0 0x78810000 0x0 0x1000>;
65eef691c8STai Nguyen		interrupts = <0x0 0x22 0x4>;
66eef691c8STai Nguyen
67eef691c8STai Nguyen		pmul3c@7e610000 {
68eef691c8STai Nguyen			compatible = "apm,xgene-pmu-l3c";
69eef691c8STai Nguyen			reg = <0x0 0x7e610000 0x0 0x1000>;
70eef691c8STai Nguyen		};
71eef691c8STai Nguyen
72eef691c8STai Nguyen		pmuiob@7e940000 {
73eef691c8STai Nguyen			compatible = "apm,xgene-pmu-iob";
74eef691c8STai Nguyen			reg = <0x0 0x7e940000 0x0 0x1000>;
75eef691c8STai Nguyen		};
76eef691c8STai Nguyen
77eef691c8STai Nguyen		pmucmcb@7e710000 {
78eef691c8STai Nguyen			compatible = "apm,xgene-pmu-mcb";
79eef691c8STai Nguyen			reg = <0x0 0x7e710000 0x0 0x1000>;
80eef691c8STai Nguyen			enable-bit-index = <0>;
81eef691c8STai Nguyen		};
82eef691c8STai Nguyen
83eef691c8STai Nguyen		pmucmcb@7e730000 {
84eef691c8STai Nguyen			compatible = "apm,xgene-pmu-mcb";
85eef691c8STai Nguyen			reg = <0x0 0x7e730000 0x0 0x1000>;
86eef691c8STai Nguyen			enable-bit-index = <1>;
87eef691c8STai Nguyen		};
88eef691c8STai Nguyen
89eef691c8STai Nguyen		pmucmc@7e810000 {
90eef691c8STai Nguyen			compatible = "apm,xgene-pmu-mc";
91eef691c8STai Nguyen			reg = <0x0 0x7e810000 0x0 0x1000>;
92eef691c8STai Nguyen			enable-bit-index = <0>;
93eef691c8STai Nguyen		};
94eef691c8STai Nguyen
95eef691c8STai Nguyen		pmucmc@7e850000 {
96eef691c8STai Nguyen			compatible = "apm,xgene-pmu-mc";
97eef691c8STai Nguyen			reg = <0x0 0x7e850000 0x0 0x1000>;
98eef691c8STai Nguyen			enable-bit-index = <1>;
99eef691c8STai Nguyen		};
100eef691c8STai Nguyen
101eef691c8STai Nguyen		pmucmc@7e890000 {
102eef691c8STai Nguyen			compatible = "apm,xgene-pmu-mc";
103eef691c8STai Nguyen			reg = <0x0 0x7e890000 0x0 0x1000>;
104eef691c8STai Nguyen			enable-bit-index = <2>;
105eef691c8STai Nguyen		};
106eef691c8STai Nguyen
107eef691c8STai Nguyen		pmucmc@7e8d0000 {
108eef691c8STai Nguyen			compatible = "apm,xgene-pmu-mc";
109eef691c8STai Nguyen			reg = <0x0 0x7e8d0000 0x0 0x1000>;
110eef691c8STai Nguyen			enable-bit-index = <3>;
111eef691c8STai Nguyen		};
112eef691c8STai Nguyen	};
113