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