1*c9ccf3a3SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0 2*c9ccf3a3SEmmanuel Vadot 3*c9ccf3a3SEmmanuel Vadot/ { 4*c9ccf3a3SEmmanuel Vadot cpus { 5*c9ccf3a3SEmmanuel Vadot #address-cells = <0x1>; 6*c9ccf3a3SEmmanuel Vadot #size-cells = <0x0>; 7*c9ccf3a3SEmmanuel Vadot 8*c9ccf3a3SEmmanuel Vadot cpu-map { 9*c9ccf3a3SEmmanuel Vadot cluster0 { 10*c9ccf3a3SEmmanuel Vadot core0 { 11*c9ccf3a3SEmmanuel Vadot cpu = <&CPU0>; 12*c9ccf3a3SEmmanuel Vadot }; 13*c9ccf3a3SEmmanuel Vadot core1 { 14*c9ccf3a3SEmmanuel Vadot cpu = <&CPU1>; 15*c9ccf3a3SEmmanuel Vadot }; 16*c9ccf3a3SEmmanuel Vadot }; 17*c9ccf3a3SEmmanuel Vadot cluster1 { 18*c9ccf3a3SEmmanuel Vadot core0 { 19*c9ccf3a3SEmmanuel Vadot cpu = <&CPU2>; 20*c9ccf3a3SEmmanuel Vadot }; 21*c9ccf3a3SEmmanuel Vadot core1 { 22*c9ccf3a3SEmmanuel Vadot cpu = <&CPU3>; 23*c9ccf3a3SEmmanuel Vadot }; 24*c9ccf3a3SEmmanuel Vadot }; 25*c9ccf3a3SEmmanuel Vadot cluster2 { 26*c9ccf3a3SEmmanuel Vadot core0 { 27*c9ccf3a3SEmmanuel Vadot cpu = <&CPU4>; 28*c9ccf3a3SEmmanuel Vadot }; 29*c9ccf3a3SEmmanuel Vadot core1 { 30*c9ccf3a3SEmmanuel Vadot cpu = <&CPU5>; 31*c9ccf3a3SEmmanuel Vadot }; 32*c9ccf3a3SEmmanuel Vadot }; 33*c9ccf3a3SEmmanuel Vadot cluster3 { 34*c9ccf3a3SEmmanuel Vadot core0 { 35*c9ccf3a3SEmmanuel Vadot cpu = <&CPU6>; 36*c9ccf3a3SEmmanuel Vadot }; 37*c9ccf3a3SEmmanuel Vadot core1 { 38*c9ccf3a3SEmmanuel Vadot cpu = <&CPU7>; 39*c9ccf3a3SEmmanuel Vadot }; 40*c9ccf3a3SEmmanuel Vadot }; 41*c9ccf3a3SEmmanuel Vadot }; 42*c9ccf3a3SEmmanuel Vadot 43*c9ccf3a3SEmmanuel Vadot CPU0: cpu@0 { 44*c9ccf3a3SEmmanuel Vadot device_type = "cpu"; 45*c9ccf3a3SEmmanuel Vadot compatible = "arm,cortex-a57"; 46*c9ccf3a3SEmmanuel Vadot reg = <0x0>; 47*c9ccf3a3SEmmanuel Vadot enable-method = "psci"; 48*c9ccf3a3SEmmanuel Vadot 49*c9ccf3a3SEmmanuel Vadot i-cache-size = <0xC000>; 50*c9ccf3a3SEmmanuel Vadot i-cache-line-size = <64>; 51*c9ccf3a3SEmmanuel Vadot i-cache-sets = <256>; 52*c9ccf3a3SEmmanuel Vadot d-cache-size = <0x8000>; 53*c9ccf3a3SEmmanuel Vadot d-cache-line-size = <64>; 54*c9ccf3a3SEmmanuel Vadot d-cache-sets = <256>; 55*c9ccf3a3SEmmanuel Vadot l2-cache = <&L2_0>; 56*c9ccf3a3SEmmanuel Vadot 57*c9ccf3a3SEmmanuel Vadot }; 58*c9ccf3a3SEmmanuel Vadot 59*c9ccf3a3SEmmanuel Vadot CPU1: cpu@1 { 60*c9ccf3a3SEmmanuel Vadot device_type = "cpu"; 61*c9ccf3a3SEmmanuel Vadot compatible = "arm,cortex-a57"; 62*c9ccf3a3SEmmanuel Vadot reg = <0x1>; 63*c9ccf3a3SEmmanuel Vadot enable-method = "psci"; 64*c9ccf3a3SEmmanuel Vadot 65*c9ccf3a3SEmmanuel Vadot i-cache-size = <0xC000>; 66*c9ccf3a3SEmmanuel Vadot i-cache-line-size = <64>; 67*c9ccf3a3SEmmanuel Vadot i-cache-sets = <256>; 68*c9ccf3a3SEmmanuel Vadot d-cache-size = <0x8000>; 69*c9ccf3a3SEmmanuel Vadot d-cache-line-size = <64>; 70*c9ccf3a3SEmmanuel Vadot d-cache-sets = <256>; 71*c9ccf3a3SEmmanuel Vadot l2-cache = <&L2_0>; 72*c9ccf3a3SEmmanuel Vadot }; 73*c9ccf3a3SEmmanuel Vadot 74*c9ccf3a3SEmmanuel Vadot CPU2: cpu@100 { 75*c9ccf3a3SEmmanuel Vadot device_type = "cpu"; 76*c9ccf3a3SEmmanuel Vadot compatible = "arm,cortex-a57"; 77*c9ccf3a3SEmmanuel Vadot reg = <0x100>; 78*c9ccf3a3SEmmanuel Vadot enable-method = "psci"; 79*c9ccf3a3SEmmanuel Vadot 80*c9ccf3a3SEmmanuel Vadot i-cache-size = <0xC000>; 81*c9ccf3a3SEmmanuel Vadot i-cache-line-size = <64>; 82*c9ccf3a3SEmmanuel Vadot i-cache-sets = <256>; 83*c9ccf3a3SEmmanuel Vadot d-cache-size = <0x8000>; 84*c9ccf3a3SEmmanuel Vadot d-cache-line-size = <64>; 85*c9ccf3a3SEmmanuel Vadot d-cache-sets = <256>; 86*c9ccf3a3SEmmanuel Vadot l2-cache = <&L2_1>; 87*c9ccf3a3SEmmanuel Vadot }; 88*c9ccf3a3SEmmanuel Vadot 89*c9ccf3a3SEmmanuel Vadot CPU3: cpu@101 { 90*c9ccf3a3SEmmanuel Vadot device_type = "cpu"; 91*c9ccf3a3SEmmanuel Vadot compatible = "arm,cortex-a57"; 92*c9ccf3a3SEmmanuel Vadot reg = <0x101>; 93*c9ccf3a3SEmmanuel Vadot enable-method = "psci"; 94*c9ccf3a3SEmmanuel Vadot 95*c9ccf3a3SEmmanuel Vadot i-cache-size = <0xC000>; 96*c9ccf3a3SEmmanuel Vadot i-cache-line-size = <64>; 97*c9ccf3a3SEmmanuel Vadot i-cache-sets = <256>; 98*c9ccf3a3SEmmanuel Vadot d-cache-size = <0x8000>; 99*c9ccf3a3SEmmanuel Vadot d-cache-line-size = <64>; 100*c9ccf3a3SEmmanuel Vadot d-cache-sets = <256>; 101*c9ccf3a3SEmmanuel Vadot l2-cache = <&L2_1>; 102*c9ccf3a3SEmmanuel Vadot }; 103*c9ccf3a3SEmmanuel Vadot 104*c9ccf3a3SEmmanuel Vadot CPU4: cpu@200 { 105*c9ccf3a3SEmmanuel Vadot device_type = "cpu"; 106*c9ccf3a3SEmmanuel Vadot compatible = "arm,cortex-a57"; 107*c9ccf3a3SEmmanuel Vadot reg = <0x200>; 108*c9ccf3a3SEmmanuel Vadot enable-method = "psci"; 109*c9ccf3a3SEmmanuel Vadot 110*c9ccf3a3SEmmanuel Vadot i-cache-size = <0xC000>; 111*c9ccf3a3SEmmanuel Vadot i-cache-line-size = <64>; 112*c9ccf3a3SEmmanuel Vadot i-cache-sets = <256>; 113*c9ccf3a3SEmmanuel Vadot d-cache-size = <0x8000>; 114*c9ccf3a3SEmmanuel Vadot d-cache-line-size = <64>; 115*c9ccf3a3SEmmanuel Vadot d-cache-sets = <256>; 116*c9ccf3a3SEmmanuel Vadot l2-cache = <&L2_2>; 117*c9ccf3a3SEmmanuel Vadot }; 118*c9ccf3a3SEmmanuel Vadot 119*c9ccf3a3SEmmanuel Vadot CPU5: cpu@201 { 120*c9ccf3a3SEmmanuel Vadot device_type = "cpu"; 121*c9ccf3a3SEmmanuel Vadot compatible = "arm,cortex-a57"; 122*c9ccf3a3SEmmanuel Vadot reg = <0x201>; 123*c9ccf3a3SEmmanuel Vadot enable-method = "psci"; 124*c9ccf3a3SEmmanuel Vadot 125*c9ccf3a3SEmmanuel Vadot i-cache-size = <0xC000>; 126*c9ccf3a3SEmmanuel Vadot i-cache-line-size = <64>; 127*c9ccf3a3SEmmanuel Vadot i-cache-sets = <256>; 128*c9ccf3a3SEmmanuel Vadot d-cache-size = <0x8000>; 129*c9ccf3a3SEmmanuel Vadot d-cache-line-size = <64>; 130*c9ccf3a3SEmmanuel Vadot d-cache-sets = <256>; 131*c9ccf3a3SEmmanuel Vadot l2-cache = <&L2_2>; 132*c9ccf3a3SEmmanuel Vadot }; 133*c9ccf3a3SEmmanuel Vadot 134*c9ccf3a3SEmmanuel Vadot CPU6: cpu@300 { 135*c9ccf3a3SEmmanuel Vadot device_type = "cpu"; 136*c9ccf3a3SEmmanuel Vadot compatible = "arm,cortex-a57"; 137*c9ccf3a3SEmmanuel Vadot reg = <0x300>; 138*c9ccf3a3SEmmanuel Vadot enable-method = "psci"; 139*c9ccf3a3SEmmanuel Vadot 140*c9ccf3a3SEmmanuel Vadot i-cache-size = <0xC000>; 141*c9ccf3a3SEmmanuel Vadot i-cache-line-size = <64>; 142*c9ccf3a3SEmmanuel Vadot i-cache-sets = <256>; 143*c9ccf3a3SEmmanuel Vadot d-cache-size = <0x8000>; 144*c9ccf3a3SEmmanuel Vadot d-cache-line-size = <64>; 145*c9ccf3a3SEmmanuel Vadot d-cache-sets = <256>; 146*c9ccf3a3SEmmanuel Vadot l2-cache = <&L2_3>; 147*c9ccf3a3SEmmanuel Vadot }; 148*c9ccf3a3SEmmanuel Vadot 149*c9ccf3a3SEmmanuel Vadot CPU7: cpu@301 { 150*c9ccf3a3SEmmanuel Vadot device_type = "cpu"; 151*c9ccf3a3SEmmanuel Vadot compatible = "arm,cortex-a57"; 152*c9ccf3a3SEmmanuel Vadot reg = <0x301>; 153*c9ccf3a3SEmmanuel Vadot enable-method = "psci"; 154*c9ccf3a3SEmmanuel Vadot 155*c9ccf3a3SEmmanuel Vadot i-cache-size = <0xC000>; 156*c9ccf3a3SEmmanuel Vadot i-cache-line-size = <64>; 157*c9ccf3a3SEmmanuel Vadot i-cache-sets = <256>; 158*c9ccf3a3SEmmanuel Vadot d-cache-size = <0x8000>; 159*c9ccf3a3SEmmanuel Vadot d-cache-line-size = <64>; 160*c9ccf3a3SEmmanuel Vadot d-cache-sets = <256>; 161*c9ccf3a3SEmmanuel Vadot l2-cache = <&L2_3>; 162*c9ccf3a3SEmmanuel Vadot }; 163*c9ccf3a3SEmmanuel Vadot }; 164*c9ccf3a3SEmmanuel Vadot 165*c9ccf3a3SEmmanuel Vadot L2_0: l2-cache0 { 166*c9ccf3a3SEmmanuel Vadot cache-size = <0x100000>; 167*c9ccf3a3SEmmanuel Vadot cache-line-size = <64>; 168*c9ccf3a3SEmmanuel Vadot cache-sets = <1024>; 169*c9ccf3a3SEmmanuel Vadot cache-unified; 170*c9ccf3a3SEmmanuel Vadot next-level-cache = <&L3>; 171*c9ccf3a3SEmmanuel Vadot }; 172*c9ccf3a3SEmmanuel Vadot 173*c9ccf3a3SEmmanuel Vadot L2_1: l2-cache1 { 174*c9ccf3a3SEmmanuel Vadot cache-size = <0x100000>; 175*c9ccf3a3SEmmanuel Vadot cache-line-size = <64>; 176*c9ccf3a3SEmmanuel Vadot cache-sets = <1024>; 177*c9ccf3a3SEmmanuel Vadot cache-unified; 178*c9ccf3a3SEmmanuel Vadot next-level-cache = <&L3>; 179*c9ccf3a3SEmmanuel Vadot }; 180*c9ccf3a3SEmmanuel Vadot 181*c9ccf3a3SEmmanuel Vadot L2_2: l2-cache2 { 182*c9ccf3a3SEmmanuel Vadot cache-size = <0x100000>; 183*c9ccf3a3SEmmanuel Vadot cache-line-size = <64>; 184*c9ccf3a3SEmmanuel Vadot cache-sets = <1024>; 185*c9ccf3a3SEmmanuel Vadot cache-unified; 186*c9ccf3a3SEmmanuel Vadot next-level-cache = <&L3>; 187*c9ccf3a3SEmmanuel Vadot }; 188*c9ccf3a3SEmmanuel Vadot 189*c9ccf3a3SEmmanuel Vadot L2_3: l2-cache3 { 190*c9ccf3a3SEmmanuel Vadot cache-size = <0x100000>; 191*c9ccf3a3SEmmanuel Vadot cache-line-size = <64>; 192*c9ccf3a3SEmmanuel Vadot cache-sets = <1024>; 193*c9ccf3a3SEmmanuel Vadot cache-unified; 194*c9ccf3a3SEmmanuel Vadot next-level-cache = <&L3>; 195*c9ccf3a3SEmmanuel Vadot }; 196*c9ccf3a3SEmmanuel Vadot 197*c9ccf3a3SEmmanuel Vadot L3: l3-cache { 198*c9ccf3a3SEmmanuel Vadot cache-level = <3>; 199*c9ccf3a3SEmmanuel Vadot cache-size = <0x800000>; 200*c9ccf3a3SEmmanuel Vadot cache-line-size = <64>; 201*c9ccf3a3SEmmanuel Vadot cache-sets = <8192>; 202*c9ccf3a3SEmmanuel Vadot cache-unified; 203*c9ccf3a3SEmmanuel Vadot }; 204*c9ccf3a3SEmmanuel Vadot 205*c9ccf3a3SEmmanuel Vadot pmu { 206*c9ccf3a3SEmmanuel Vadot compatible = "arm,cortex-a57-pmu"; 207*c9ccf3a3SEmmanuel Vadot interrupts = <0x0 0x7 0x4>, 208*c9ccf3a3SEmmanuel Vadot <0x0 0x8 0x4>, 209*c9ccf3a3SEmmanuel Vadot <0x0 0x9 0x4>, 210*c9ccf3a3SEmmanuel Vadot <0x0 0xa 0x4>, 211*c9ccf3a3SEmmanuel Vadot <0x0 0xb 0x4>, 212*c9ccf3a3SEmmanuel Vadot <0x0 0xc 0x4>, 213*c9ccf3a3SEmmanuel Vadot <0x0 0xd 0x4>, 214*c9ccf3a3SEmmanuel Vadot <0x0 0xe 0x4>; 215*c9ccf3a3SEmmanuel Vadot interrupt-affinity = <&CPU0>, 216*c9ccf3a3SEmmanuel Vadot <&CPU1>, 217*c9ccf3a3SEmmanuel Vadot <&CPU2>, 218*c9ccf3a3SEmmanuel Vadot <&CPU3>, 219*c9ccf3a3SEmmanuel Vadot <&CPU4>, 220*c9ccf3a3SEmmanuel Vadot <&CPU5>, 221*c9ccf3a3SEmmanuel Vadot <&CPU6>, 222*c9ccf3a3SEmmanuel Vadot <&CPU7>; 223*c9ccf3a3SEmmanuel Vadot }; 224*c9ccf3a3SEmmanuel Vadot}; 225