1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Samsung Exynos5420 SoC cpu device tree source 4*724ba675SRob Herring * 5*724ba675SRob Herring * Copyright (c) 2015 Samsung Electronics Co., Ltd. 6*724ba675SRob Herring * http://www.samsung.com 7*724ba675SRob Herring * 8*724ba675SRob Herring * This file provides desired ordering for Exynos5420 and Exynos5800 9*724ba675SRob Herring * boards: CPU[0123] being the A15. 10*724ba675SRob Herring * 11*724ba675SRob Herring * The Exynos5420, 5422 and 5800 actually share the same CPU configuration 12*724ba675SRob Herring * but particular boards choose different booting order. 13*724ba675SRob Herring * 14*724ba675SRob Herring * Exynos5420 and Exynos5800 always boot from Cortex-A15. On Exynos5422 15*724ba675SRob Herring * booting cluster (big or LITTLE) is chosen by IROM code by reading 16*724ba675SRob Herring * the gpg2-1 GPIO. By default all Exynos5422 based boards choose booting 17*724ba675SRob Herring * from the LITTLE: Cortex-A7. 18*724ba675SRob Herring */ 19*724ba675SRob Herring 20*724ba675SRob Herring/ { 21*724ba675SRob Herring cpus { 22*724ba675SRob Herring #address-cells = <1>; 23*724ba675SRob Herring #size-cells = <0>; 24*724ba675SRob Herring 25*724ba675SRob Herring cpu-map { 26*724ba675SRob Herring cluster0 { 27*724ba675SRob Herring core0 { 28*724ba675SRob Herring cpu = <&cpu0>; 29*724ba675SRob Herring }; 30*724ba675SRob Herring core1 { 31*724ba675SRob Herring cpu = <&cpu1>; 32*724ba675SRob Herring }; 33*724ba675SRob Herring core2 { 34*724ba675SRob Herring cpu = <&cpu2>; 35*724ba675SRob Herring }; 36*724ba675SRob Herring core3 { 37*724ba675SRob Herring cpu = <&cpu3>; 38*724ba675SRob Herring }; 39*724ba675SRob Herring }; 40*724ba675SRob Herring 41*724ba675SRob Herring cluster1 { 42*724ba675SRob Herring core0 { 43*724ba675SRob Herring cpu = <&cpu4>; 44*724ba675SRob Herring }; 45*724ba675SRob Herring core1 { 46*724ba675SRob Herring cpu = <&cpu5>; 47*724ba675SRob Herring }; 48*724ba675SRob Herring core2 { 49*724ba675SRob Herring cpu = <&cpu6>; 50*724ba675SRob Herring }; 51*724ba675SRob Herring core3 { 52*724ba675SRob Herring cpu = <&cpu7>; 53*724ba675SRob Herring }; 54*724ba675SRob Herring }; 55*724ba675SRob Herring }; 56*724ba675SRob Herring 57*724ba675SRob Herring cpu0: cpu@0 { 58*724ba675SRob Herring device_type = "cpu"; 59*724ba675SRob Herring compatible = "arm,cortex-a15"; 60*724ba675SRob Herring reg = <0x0>; 61*724ba675SRob Herring clocks = <&clock CLK_ARM_CLK>; 62*724ba675SRob Herring clock-frequency = <1800000000>; 63*724ba675SRob Herring cci-control-port = <&cci_control1>; 64*724ba675SRob Herring operating-points-v2 = <&cluster_a15_opp_table>; 65*724ba675SRob Herring #cooling-cells = <2>; /* min followed by max */ 66*724ba675SRob Herring capacity-dmips-mhz = <1024>; 67*724ba675SRob Herring }; 68*724ba675SRob Herring 69*724ba675SRob Herring cpu1: cpu@1 { 70*724ba675SRob Herring device_type = "cpu"; 71*724ba675SRob Herring compatible = "arm,cortex-a15"; 72*724ba675SRob Herring reg = <0x1>; 73*724ba675SRob Herring clocks = <&clock CLK_ARM_CLK>; 74*724ba675SRob Herring clock-frequency = <1800000000>; 75*724ba675SRob Herring cci-control-port = <&cci_control1>; 76*724ba675SRob Herring operating-points-v2 = <&cluster_a15_opp_table>; 77*724ba675SRob Herring #cooling-cells = <2>; /* min followed by max */ 78*724ba675SRob Herring capacity-dmips-mhz = <1024>; 79*724ba675SRob Herring }; 80*724ba675SRob Herring 81*724ba675SRob Herring cpu2: cpu@2 { 82*724ba675SRob Herring device_type = "cpu"; 83*724ba675SRob Herring compatible = "arm,cortex-a15"; 84*724ba675SRob Herring reg = <0x2>; 85*724ba675SRob Herring clocks = <&clock CLK_ARM_CLK>; 86*724ba675SRob Herring clock-frequency = <1800000000>; 87*724ba675SRob Herring cci-control-port = <&cci_control1>; 88*724ba675SRob Herring operating-points-v2 = <&cluster_a15_opp_table>; 89*724ba675SRob Herring #cooling-cells = <2>; /* min followed by max */ 90*724ba675SRob Herring capacity-dmips-mhz = <1024>; 91*724ba675SRob Herring }; 92*724ba675SRob Herring 93*724ba675SRob Herring cpu3: cpu@3 { 94*724ba675SRob Herring device_type = "cpu"; 95*724ba675SRob Herring compatible = "arm,cortex-a15"; 96*724ba675SRob Herring reg = <0x3>; 97*724ba675SRob Herring clocks = <&clock CLK_ARM_CLK>; 98*724ba675SRob Herring clock-frequency = <1800000000>; 99*724ba675SRob Herring cci-control-port = <&cci_control1>; 100*724ba675SRob Herring operating-points-v2 = <&cluster_a15_opp_table>; 101*724ba675SRob Herring #cooling-cells = <2>; /* min followed by max */ 102*724ba675SRob Herring capacity-dmips-mhz = <1024>; 103*724ba675SRob Herring }; 104*724ba675SRob Herring 105*724ba675SRob Herring cpu4: cpu@100 { 106*724ba675SRob Herring device_type = "cpu"; 107*724ba675SRob Herring compatible = "arm,cortex-a7"; 108*724ba675SRob Herring reg = <0x100>; 109*724ba675SRob Herring clocks = <&clock CLK_KFC_CLK>; 110*724ba675SRob Herring clock-frequency = <1000000000>; 111*724ba675SRob Herring cci-control-port = <&cci_control0>; 112*724ba675SRob Herring operating-points-v2 = <&cluster_a7_opp_table>; 113*724ba675SRob Herring #cooling-cells = <2>; /* min followed by max */ 114*724ba675SRob Herring capacity-dmips-mhz = <539>; 115*724ba675SRob Herring }; 116*724ba675SRob Herring 117*724ba675SRob Herring cpu5: cpu@101 { 118*724ba675SRob Herring device_type = "cpu"; 119*724ba675SRob Herring compatible = "arm,cortex-a7"; 120*724ba675SRob Herring reg = <0x101>; 121*724ba675SRob Herring clocks = <&clock CLK_KFC_CLK>; 122*724ba675SRob Herring clock-frequency = <1000000000>; 123*724ba675SRob Herring cci-control-port = <&cci_control0>; 124*724ba675SRob Herring operating-points-v2 = <&cluster_a7_opp_table>; 125*724ba675SRob Herring #cooling-cells = <2>; /* min followed by max */ 126*724ba675SRob Herring capacity-dmips-mhz = <539>; 127*724ba675SRob Herring }; 128*724ba675SRob Herring 129*724ba675SRob Herring cpu6: cpu@102 { 130*724ba675SRob Herring device_type = "cpu"; 131*724ba675SRob Herring compatible = "arm,cortex-a7"; 132*724ba675SRob Herring reg = <0x102>; 133*724ba675SRob Herring clocks = <&clock CLK_KFC_CLK>; 134*724ba675SRob Herring clock-frequency = <1000000000>; 135*724ba675SRob Herring cci-control-port = <&cci_control0>; 136*724ba675SRob Herring operating-points-v2 = <&cluster_a7_opp_table>; 137*724ba675SRob Herring #cooling-cells = <2>; /* min followed by max */ 138*724ba675SRob Herring capacity-dmips-mhz = <539>; 139*724ba675SRob Herring }; 140*724ba675SRob Herring 141*724ba675SRob Herring cpu7: cpu@103 { 142*724ba675SRob Herring device_type = "cpu"; 143*724ba675SRob Herring compatible = "arm,cortex-a7"; 144*724ba675SRob Herring reg = <0x103>; 145*724ba675SRob Herring clocks = <&clock CLK_KFC_CLK>; 146*724ba675SRob Herring clock-frequency = <1000000000>; 147*724ba675SRob Herring cci-control-port = <&cci_control0>; 148*724ba675SRob Herring operating-points-v2 = <&cluster_a7_opp_table>; 149*724ba675SRob Herring #cooling-cells = <2>; /* min followed by max */ 150*724ba675SRob Herring capacity-dmips-mhz = <539>; 151*724ba675SRob Herring }; 152*724ba675SRob Herring }; 153*724ba675SRob Herring}; 154*724ba675SRob Herring 155*724ba675SRob Herring&arm_a7_pmu { 156*724ba675SRob Herring interrupt-affinity = <&cpu4>, <&cpu5>, <&cpu6>, <&cpu7>; 157*724ba675SRob Herring status = "okay"; 158*724ba675SRob Herring}; 159*724ba675SRob Herring 160*724ba675SRob Herring&arm_a15_pmu { 161*724ba675SRob Herring interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>; 162*724ba675SRob Herring status = "okay"; 163*724ba675SRob Herring}; 164