123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- * APM X-Gene SoC PMU bindings
- This is APM X-Gene SoC PMU (Performance Monitoring Unit) module.
- The following PMU devices are supported:
- L3C - L3 cache controller
- IOB - IO bridge
- MCB - Memory controller bridge
- MC - Memory controller
- The following section describes the SoC PMU DT node binding.
- Required properties:
- - compatible : Shall be "apm,xgene-pmu" for revision 1 or
- "apm,xgene-pmu-v2" for revision 2.
- - regmap-csw : Regmap of the CPU switch fabric (CSW) resource.
- - regmap-mcba : Regmap of the MCB-A (memory bridge) resource.
- - regmap-mcbb : Regmap of the MCB-B (memory bridge) resource.
- - reg : First resource shall be the CPU bus PMU resource.
- - interrupts : Interrupt-specifier for PMU IRQ.
- Required properties for L3C subnode:
- - compatible : Shall be "apm,xgene-pmu-l3c".
- - reg : First resource shall be the L3C PMU resource.
- Required properties for IOB subnode:
- - compatible : Shall be "apm,xgene-pmu-iob".
- - reg : First resource shall be the IOB PMU resource.
- Required properties for MCB subnode:
- - compatible : Shall be "apm,xgene-pmu-mcb".
- - reg : First resource shall be the MCB PMU resource.
- - enable-bit-index : The bit indicates if the according MCB is enabled.
- Required properties for MC subnode:
- - compatible : Shall be "apm,xgene-pmu-mc".
- - reg : First resource shall be the MC PMU resource.
- - enable-bit-index : The bit indicates if the according MC is enabled.
- Example:
- csw: csw@7e200000 {
- compatible = "apm,xgene-csw", "syscon";
- reg = <0x0 0x7e200000 0x0 0x1000>;
- };
- mcba: mcba@7e700000 {
- compatible = "apm,xgene-mcb", "syscon";
- reg = <0x0 0x7e700000 0x0 0x1000>;
- };
- mcbb: mcbb@7e720000 {
- compatible = "apm,xgene-mcb", "syscon";
- reg = <0x0 0x7e720000 0x0 0x1000>;
- };
- pmu: pmu@78810000 {
- compatible = "apm,xgene-pmu-v2";
- #address-cells = <2>;
- #size-cells = <2>;
- ranges;
- regmap-csw = <&csw>;
- regmap-mcba = <&mcba>;
- regmap-mcbb = <&mcbb>;
- reg = <0x0 0x78810000 0x0 0x1000>;
- interrupts = <0x0 0x22 0x4>;
- pmul3c@7e610000 {
- compatible = "apm,xgene-pmu-l3c";
- reg = <0x0 0x7e610000 0x0 0x1000>;
- };
- pmuiob@7e940000 {
- compatible = "apm,xgene-pmu-iob";
- reg = <0x0 0x7e940000 0x0 0x1000>;
- };
- pmucmcb@7e710000 {
- compatible = "apm,xgene-pmu-mcb";
- reg = <0x0 0x7e710000 0x0 0x1000>;
- enable-bit-index = <0>;
- };
- pmucmcb@7e730000 {
- compatible = "apm,xgene-pmu-mcb";
- reg = <0x0 0x7e730000 0x0 0x1000>;
- enable-bit-index = <1>;
- };
- pmucmc@7e810000 {
- compatible = "apm,xgene-pmu-mc";
- reg = <0x0 0x7e810000 0x0 0x1000>;
- enable-bit-index = <0>;
- };
- pmucmc@7e850000 {
- compatible = "apm,xgene-pmu-mc";
- reg = <0x0 0x7e850000 0x0 0x1000>;
- enable-bit-index = <1>;
- };
- pmucmc@7e890000 {
- compatible = "apm,xgene-pmu-mc";
- reg = <0x0 0x7e890000 0x0 0x1000>;
- enable-bit-index = <2>;
- };
- pmucmc@7e8d0000 {
- compatible = "apm,xgene-pmu-mc";
- reg = <0x0 0x7e8d0000 0x0 0x1000>;
- enable-bit-index = <3>;
- };
- };
|