From bab7bfd282134483021411d0648719b0d6ecc038 Mon Sep 17 00:00:00 2001 From: Achin Gupta <achin.gupta@arm.com> Date: Wed, 20 Aug 2014 17:33:09 +0100 Subject: [PATCH] FVP: Update device trees to match cpuidle driver This patch updates the representation of idle tables and cpu/cluster topology in the device tree source files for the FVP to what the latest cpuidle driver in Linux expects. The device tree binaries have also been updated. Change-Id: If0668b96234f65aa0435fba52f288c9378bd8824 --- fdts/fvp-base-gicv2-psci.dtb | Bin 8916 -> 10082 bytes fdts/fvp-base-gicv2-psci.dts | 83 ++++++++++++++++++++--- fdts/fvp-base-gicv2legacy-psci.dtb | Bin 8916 -> 10082 bytes fdts/fvp-base-gicv2legacy-psci.dts | 83 ++++++++++++++++++++--- fdts/fvp-base-gicv3-psci.dtb | Bin 9544 -> 10710 bytes fdts/fvp-base-gicv3-psci.dts | 83 ++++++++++++++++++++--- fdts/fvp-foundation-gicv2-psci.dtb | Bin 6641 -> 7451 bytes fdts/fvp-foundation-gicv2-psci.dts | 52 ++++++++++++-- fdts/fvp-foundation-gicv2legacy-psci.dtb | Bin 6641 -> 7451 bytes fdts/fvp-foundation-gicv2legacy-psci.dts | 52 ++++++++++++-- fdts/fvp-foundation-gicv3-psci.dtb | Bin 7269 -> 8079 bytes fdts/fvp-foundation-gicv3-psci.dts | 52 ++++++++++++-- 12 files changed, 369 insertions(+), 36 deletions(-) diff --git a/fdts/fvp-base-gicv2-psci.dtb b/fdts/fvp-base-gicv2-psci.dtb index 619348eac9004e95fb61c98d894882ac64df52e4..ae3b4c55c041da0a7a85b3cf7d2ebee450d97b6a 100644 GIT binary patch literal 10082 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 delta 2683 zcmah~U1*zC7(U;ZCjCp+wMm+;U7MzHGb=;VPS%-i7~9#O4TBCTp*P#iIy#ruIN7K& z=#Vn-MrIGp4R%rL55)^nR@inScrz#>SfPmYV$`33y1APosEGJH=lf2+G+*WpoSgT( z=Y8JydEfJXCqHIZpHHj={{3Buu2mt#un^Jju_iDZF}Gr3nEyb3`SV21Y)mIDl?O`| z<`uc_+u0!&EUo(Gkr(sh!W+5M)X3}JHlxhYfZlDG^x1}~qDQlmA#~Imxx%^h9taql z2sv=7U2&i*!h4b`qfPK)K4j^J%Lmov`52Y+xmZ)4kMY=idXg%mM-Zx*k6f&MGJIun zeDbxkZ<4X1+=+ET{#<*>6iYH+*Re(1u}{+K<Z9jFZm|ZD)N6%k;C1S#_iVl1-<SUS zlquHaFqaKETR&*R``7iYKC$8b;|KBHd|Wp8YYdNU@ke*nmB9Uw8HS@3Q-@)1Ey&}3 zI9ij7{uw|Mfw#NG67;&7z#0+k^>`KnC{@A6=)SQU_@>I(CqHZ&Yubc@5u9xeW=QdP zFm4=?vq6h*Fw?3!%j7kvFiy^E^6Ak2*eDM$bmkkz)Ly+00FslJLv3N!M<>GdKKJs= zP~S@~ylCi8<COjyh(F&unL0auDwjXgGdb}Vv`#E~rJasVuO2xZ?sKye;vx=}B?<{v z^I?mX?k~;Clq=ygD93^3%pg)%9nI1!C>G<qEdyX&f?Vo=guKqVO4BP>ng^ePD^<dx zD_+%H8Jv0G`iyJxP$b^S%IJ$tLd?nO$bMDH>aq~kayin!7a^F0^$6*bu#@T?a}|<S zJVz5FRJtWI11M=b&>CzAg^6Hu(wvMx!m2E>a%lahkf~SYvh^&`O>wggTV==n9mqa= zj~F%`+_UDi1<Gr3`?jNel4$90q6s<i17TbT@4$l!zPN3aaF)ppM^ioqzOPlmnY$a# zEFTpee*qxBY{6MJH{6}PL*9aC+f;O3nj5ZfzEbWM{1*$(BDvwb*8e9zy<J7ejZ}bB zSqf)I>x;9Z*R+rEtHGuMTz@Gc`{LF8z>q5&N4sjbF0uU-T{Yprod{WQmb#*QU7vDS z33;I-#V<s?j>V5qx0E)=TJZ}B%|%oENTLYgCWD^cR2EiQdsJn~<#Q+Teu)!>SB@1Z zSc3_mos4g@qeIV?=*Z%`l07f`Zi~Df9ccy!w0JoO+0uFVsPWsL(b9iH<1f)WHV<2d zflIToWDk|O%Q+MGAnVp7b-tuNxzsu2JqXD=7wdZ_3xT)9Nta+{zHYoaUhphGT(@;( zUizT($;in<ETWz*-F-Shjl3QkFtTzzb_Bn>yD~GCN?~4r^8-!*bJnVEF|T(lKE?gJ zLL7umasNK#t0nsnAmcqPo__|JZQ&6^R-wMI4|U<b!hXWmfxEd1nK|h5yO24!ha>YR znT~gLnZLd~@<Q*i{((b62_r8KC@W>Q6J`(PY`oVrH{>lYf652(PvqZEbjZYxo<RQe V)Vb;1g^3eWC-dVsvODU`{{V{hFO2{I diff --git a/fdts/fvp-base-gicv2-psci.dts b/fdts/fvp-base-gicv2-psci.dts index d20f7bd58..43518a3f4 100644 --- a/fdts/fvp-base-gicv2-psci.dts +++ b/fdts/fvp-base-gicv2-psci.dts @@ -65,53 +65,120 @@ #address-cells = <2>; #size-cells = <0>; - cpu@0 { + cpu-map { + cluster0 { + core0 { + cpu = <&CPU0>; + }; + core1 { + cpu = <&CPU1>; + }; + core2 { + cpu = <&CPU2>; + }; + core3 { + cpu = <&CPU3>; + }; + }; + + cluster1 { + core0 { + cpu = <&CPU4>; + }; + core1 { + cpu = <&CPU5>; + }; + core2 { + cpu = <&CPU6>; + }; + core3 { + cpu = <&CPU7>; + }; + }; + }; + + idle-states { + entry-method = "arm,psci"; + + CPU_SLEEP_0: cpu-sleep-0 { + compatible = "arm,idle-state"; + entry-method-param = <0x0010000>; + entry-latency-us = <40>; + exit-latency-us = <100>; + min-residency-us = <150>; + }; + + CLUSTER_SLEEP_0: cluster-sleep-0 { + compatible = "arm,idle-state"; + entry-method-param = <0x1010000>; + entry-latency-us = <500>; + exit-latency-us = <1000>; + min-residency-us = <2500>; + }; + }; + + CPU0:cpu@0 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x0>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@1 { + + CPU1:cpu@1 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x1>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@2 { + + CPU2:cpu@2 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x2>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@3 { + + CPU3:cpu@3 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x3>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@100 { + + CPU4:cpu@100 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x100>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@101 { + + CPU5:cpu@101 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x101>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@102 { + + CPU6:cpu@102 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x102>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@103 { + + CPU7:cpu@103 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x103>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; }; diff --git a/fdts/fvp-base-gicv2legacy-psci.dtb b/fdts/fvp-base-gicv2legacy-psci.dtb index 12307177b2d1e1bd4bc8ac56b4bf2da5bf9ec16a..2d23968f3e445a853b91144728d84f6676ee7f8f 100644 GIT binary patch literal 10082 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 delta 2683 zcmah~U1*zC7(U;ZCjCp+wMm+;U7MzHGb=;VPS%-i7~9#O4TBCTp*P#iIy#ruIN7K& z=#Vn-MrIGp4R%rL55)^nR@inScrz#>SfPmYV$`33y1APosEGJH=lf2+G+*WpoSgT( z=Y8JydEfJXCqHIZpHHj={{3Buu2mt#un^Jju_iDZF}Gr3nEyb3`SV21Y)mIDl?O`| z<`uc_+u0!&EUo(Gkr(sh!W+5M)X3}JHlxhYfZlDG^x1}~qDQlmA#~Imxx%^h9taql z2sv=7U2&i*!h4b`qfPK)K4j^J%Lmov`52Y+xmZ)4kMY=idXg%mM-Zx*k6f&MGJIun zeDbxkZ<4X1+=+ET{#<*>6iYH+*Re(1u}{+K<Z9jFZm|ZD)N6%k;C1S#_iVl1-<SUS zlquHaFqaKETR&*R``7iYKC$8b;|KBHd|Wp8YYdNU@ke*nmB9Uw8HS@3Q-@)1Ey&}3 zI9ij7{uw|Mfw#NG67;&7z#0+k^>`KnC{@A6=)SQU_@>I(CqHZ&Yubc@5u9xeW=QdP zFm4=?vq6h*Fw?3!%j7kvFiy^E^6Ak2*eDM$bmkkz)Ly+00FslJLv3N!M<>GdKKJs= zP~S@~ylCi8<COjyh(F&unL0auDwjXgGdb}Vv`#E~rJasVuO2xZ?sKye;vx=}B?<{v z^I?mX?k~;Clq=ygD93^3%pg)%9nI1!C>G<qEdyX&f?Vo=guKqVO4BP>ng^ePD^<dx zD_+%H8Jv0G`iyJxP$b^S%IJ$tLd?nO$bMDH>aq~kayin!7a^F0^$6*bu#@T?a}|<S zJVz5FRJtWI11M=b&>CzAg^6Hu(wvMx!m2E>a%lahkf~SYvh^&`O>wggTV==n9mqa= zj~F%`+_UDi1<Gr3`?jNel4$90q6s<i17TbT@4$l!zPN3aaF)ppM^ioqzOPlmnY$a# zEFTpee*qxBY{6MJH{6}PL*9aC+f;O3nj5ZfzEbWM{1*$(BDvwb*8e9zy<J7ejZ}bB zSqf)I>x;9Z*R+rEtHGuMTz@Gc`{LF8z>q5&N4sjbF0uU-T{Yprod{WQmb#*QU7vDS z33;I-#V<s?j>V5qx0E)=TJZ}B%|%oENTLYgCWD^cR2EiQdsJn~<#Q+Teu)!>SB@1Z zSc3_mos4g@qeIV?=*Z%`l07f`Zi~Df9ccy!w0JoO+0uFVsPWsL(b9iH<1f)WHV<2d zflIToWDk|O%Q+MGAnVp7b-tuNxzsu2JqXD=7wdZ_3xT)9Nta+{zHYoaUhphGT(@;( zUizT($;in<ETWz*-F-Shjl3QkFtTzzb_Bn>yD~GCN?~4r^8-!*bJnVEF|T(lKE?gJ zLL7umasNK#t0nsnAmcqPo__|JZQ&6^R-wMI4|U<b!hXWmfxEd1nK|h5yO24!ha>YR znT~gLnZLd~@<Q*i{((b62_r8KC@W>Q6J`(PY`oVrH{>lYf652(PvqZEbjZYxo<RQe V)Vb;1g^3eWC-dVsvODU`{{V{hFO2{I diff --git a/fdts/fvp-base-gicv2legacy-psci.dts b/fdts/fvp-base-gicv2legacy-psci.dts index 3eb0e571a..06d33e749 100644 --- a/fdts/fvp-base-gicv2legacy-psci.dts +++ b/fdts/fvp-base-gicv2legacy-psci.dts @@ -65,53 +65,120 @@ #address-cells = <2>; #size-cells = <0>; - cpu@0 { + cpu-map { + cluster0 { + core0 { + cpu = <&CPU0>; + }; + core1 { + cpu = <&CPU1>; + }; + core2 { + cpu = <&CPU2>; + }; + core3 { + cpu = <&CPU3>; + }; + }; + + cluster1 { + core0 { + cpu = <&CPU4>; + }; + core1 { + cpu = <&CPU5>; + }; + core2 { + cpu = <&CPU6>; + }; + core3 { + cpu = <&CPU7>; + }; + }; + }; + + idle-states { + entry-method = "arm,psci"; + + CPU_SLEEP_0: cpu-sleep-0 { + compatible = "arm,idle-state"; + entry-method-param = <0x0010000>; + entry-latency-us = <40>; + exit-latency-us = <100>; + min-residency-us = <150>; + }; + + CLUSTER_SLEEP_0: cluster-sleep-0 { + compatible = "arm,idle-state"; + entry-method-param = <0x1010000>; + entry-latency-us = <500>; + exit-latency-us = <1000>; + min-residency-us = <2500>; + }; + }; + + CPU0:cpu@0 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x0>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@1 { + + CPU1:cpu@1 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x1>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@2 { + + CPU2:cpu@2 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x2>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@3 { + + CPU3:cpu@3 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x3>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@100 { + + CPU4:cpu@100 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x100>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@101 { + + CPU5:cpu@101 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x101>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@102 { + + CPU6:cpu@102 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x102>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@103 { + + CPU7:cpu@103 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x103>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; }; diff --git a/fdts/fvp-base-gicv3-psci.dtb b/fdts/fvp-base-gicv3-psci.dtb index b9fe1cf3fe0407f3bcf4b8b8bb7db1536c088ac1..c2f63ebebee24231f71f3eb0c9d6a839e3314d6f 100644 GIT binary patch literal 10710 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 delta 2514 zcmah~U1(fI6rMZjZvN9IW|M4wHv5xgm!fvF+iGo;L`&U}N)xG6NdhLu#H8I#mo$|s zp|Mg#yh@G72SEyb5a~mRNEKfq1nEO8Mfy;Jpbx2n2%>0+;De~&nS1B%ZtmI+%$=Dt z=ljmz%-oIR>jSY{)&Kk|L}$Mc0zLc;#u$1n`W|#Nxea;Mr?JDbwl8jpN-*p~U!*l} zw9T}H>dQMG^h?<@6EiHK1y74nsAoXz*4yK?^&ZiDvX~xZEH@^yXZw<vpcQ!Ipjqm& z0-1yEj;m-2&^i`&(T%2?r8{CVipMfmwj&nfp0RYtRW!xDDH;pCSswK*W+pSI=U!oV zmA^rZCS5N-DaB=qS3KA(R_q-N;&XdGgwdpP6~j{8pxYHwHR4Bmhih(9f8_x0ykB`p ziY>ZTnF^_z?7e_pZYn)a-nTq|-VsYzB2TlM+}NZsH8-A_>`ROvOvcfa+zw79Lnp2Z zJ2%v>5X~6*Sh1ev$a2+_?8tW2c_~(CzWVjO;xab#z{YN@b?e0hU@u6G@U>t~)N914 zzkax`0L9uX^jZC&VbU&N#5hbbUkdZAk0ooq1~&Pvuc!N%&1?HDwv5?_Sj6jUm>79E zkvTMxK9$&?nSPZw=%P19>4tqF7gFqgq7Mp;gu})Ntv0mNzaBqrH|%rU5#lu{>O5F> z<|e0LDw#M1Q#9&{(L&=3oRrPR!A{ev2<J?JFc`D;90@hfV=k$w6riTw2TXMbtn1AV zakk!KjT}O;G(x^aKQ~2cIUJpHloIZ@`g>`x%un<Fo&%;TT8@uP$R(}J@hN^?+H%D^ z)?QD4`Fj>k^<L!AWi}dGqQYii54rCAvgoEg{}=+6TW8XWpJV<+e9^+XtjFswF?#Ja zY-o>aoD)|A;S#MiAIB5IiaD2bKzvr2E)VXY?^EcfTAl^Ev?v-U<{s$p6`BKg+vX7e z&o&-wc%E)$+nh2tx=7%T=N9^Jh31mE(Hzg+ZNJ^dwmCm;G#B*l=+*$E)kSuWu+BMC z=A-$L@*c}9&zA!uM@;p@a@*ENy526hstk}k@`2GzZC3T#UjkDd<ZdRm$335k*>!Gq zGQ}tu<g0;8RD?}yW7G#xv0GQ;-QXbd(OwjZQ(BM@&aP&&^3fCubQxbicOvyT6QHr% zZ0H-c%E32iG<4Kw3LM>?F4AgfAYuHFJdyuXGX4;W;VaO!31xZS8e$ouWjrxs;a<-H zEIss5_~9c%m~p1LGY<aB8RO(+wq*UcO<Ts!@e{+1b@;lgxApXy3A}mTf^L_^s6Uc4 zhG-#j6yJ6At?x)-KH9;Os~yJ{i$yKxLHMXm3`26k%9j(w1<R(henW`IF6QZ9!u*50 z^@o__4RrLcV$MY_5h=wi^-or3=__nb=K*eF4o4h<4a~W*K8WOZwAvY#@(yiw2BiGy ry{?3mztDajey8a!qUWOldMA3YIz2Oc_T2s1>G9bY)05Y(N9*K&1N|x{ diff --git a/fdts/fvp-base-gicv3-psci.dts b/fdts/fvp-base-gicv3-psci.dts index 44339a126..6afa44c72 100644 --- a/fdts/fvp-base-gicv3-psci.dts +++ b/fdts/fvp-base-gicv3-psci.dts @@ -63,53 +63,120 @@ #address-cells = <2>; #size-cells = <0>; - cpu@0 { + cpu-map { + cluster0 { + core0 { + cpu = <&CPU0>; + }; + core1 { + cpu = <&CPU1>; + }; + core2 { + cpu = <&CPU2>; + }; + core3 { + cpu = <&CPU3>; + }; + }; + + cluster1 { + core0 { + cpu = <&CPU4>; + }; + core1 { + cpu = <&CPU5>; + }; + core2 { + cpu = <&CPU6>; + }; + core3 { + cpu = <&CPU7>; + }; + }; + }; + + idle-states { + entry-method = "arm,psci"; + + CPU_SLEEP_0: cpu-sleep-0 { + compatible = "arm,idle-state"; + entry-method-param = <0x0010000>; + entry-latency-us = <40>; + exit-latency-us = <100>; + min-residency-us = <150>; + }; + + CLUSTER_SLEEP_0: cluster-sleep-0 { + compatible = "arm,idle-state"; + entry-method-param = <0x1010000>; + entry-latency-us = <500>; + exit-latency-us = <1000>; + min-residency-us = <2500>; + }; + }; + + CPU0:cpu@0 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x0>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@1 { + + CPU1:cpu@1 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x1>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@2 { + + CPU2:cpu@2 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x2>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@3 { + + CPU3:cpu@3 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x3>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@100 { + + CPU4:cpu@100 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x100>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@101 { + + CPU5:cpu@101 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x101>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@102 { + + CPU6:cpu@102 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x102>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@103 { + + CPU7:cpu@103 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x103>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; }; diff --git a/fdts/fvp-foundation-gicv2-psci.dtb b/fdts/fvp-foundation-gicv2-psci.dtb index eee0be0e1aa8a6d597fb32ba01387769865aab73..df8e629ffafe1746e42d3c84997e68873b28c493 100644 GIT binary patch literal 7451 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 WL^@^ae0I|R^D&$t2lLf3b^ikatER62 delta 1614 zcmah~O-NKx6u$R4zoyNvqcc;cBsGbo&4kJbIk*@^Luw=8E=*Hq#s<r<S|lyXMM!W# zqFjhX&@z;8(IzNx5#+Mm2Z6Q_TSwpbX0ATxDP1`4-h1x(zH{z5=gz!N@1_!)wSRvL z5#1F+^b1kHi8%oYK>QF4qZ#`7_les^Ak$G&Rbg^K7S%P^xkj;4(wbi$IU#S0cSk3w zQ8muEtT2?&+YOhsVS1m@ILZ(@>g8y0CX>Pf<CuV`w)@#|ov&Lgj1}%oKiCI1VYQ+h z?x%)WQ_tOvC&iaCHe;Twy9Zju7M2X%D};~N*Is{?^?JXp+B|7PY^e!Od+LoRYk+;n z6XVX~ZI@N5+k56hwFOs$HTgMW5Y5jbtf)CJ7`D`g_c5UT)lXW*8uU7iz{+~;_2|U{ zu{dBOTUY;7e{;xg_1QNPJcNP~$U6L27+cXFp@VsU&-KAFjlRvEoa&^C`&wXb+)ozL zqxoF&a$(|Og)K9oBj>!$y$T1qnr*DY*O$R5S$$+x`9Qpmcxtq7;;YnBpvxYW5OX** zEs>*ARMTVQ2rQM%l>*Z&WYwLdqcT)WFo*lU2o7b@ZcJsV;R(W!Ief|l@)6cn0us6o z&dqDOR7)s(5mYohpki&FL1BfH7WI+~>SgF`fSJ*i#QQ=fzJ_|tOgM3(@4!qr)v0hF z9|s!H;(}LV>u7UN*(LQ9Qs6z)U3i#q_T52*8m=#NJUmfn!cQCtcSB20$HUi4aCW-g zJ7E8T_eV_cXqF@3R9d|=-G}e~Ju<>V^M}puT~{YuP90Op!I`zuRHw}}&eo5UDo6{y zPt&tbBcq^LsYtJ@Q%RLjR~youpfg{vjZT|mHv35L(E=#wayYCu8`2TLL-0`%jcSSx zB;~8ru=y*=pvdx0BuAF9*85MEJ=F4tT8d^}68{RqrG7<wrAH-VgZSQyeNYSWM)fg% YsWv}3H8a~*oVYo4D?hfn6K|LQ0Dv33S^xk5 diff --git a/fdts/fvp-foundation-gicv2-psci.dts b/fdts/fvp-foundation-gicv2-psci.dts index 8d354b37a..15ff47182 100644 --- a/fdts/fvp-foundation-gicv2-psci.dts +++ b/fdts/fvp-foundation-gicv2-psci.dts @@ -65,29 +65,73 @@ #address-cells = <2>; #size-cells = <0>; - cpu@0 { + cpu-map { + cluster0 { + core0 { + cpu = <&CPU0>; + }; + core1 { + cpu = <&CPU1>; + }; + core2 { + cpu = <&CPU2>; + }; + core3 { + cpu = <&CPU3>; + }; + }; + }; + + idle-states { + entry-method = "arm,psci"; + + CPU_SLEEP_0: cpu-sleep-0 { + compatible = "arm,idle-state"; + entry-method-param = <0x0010000>; + entry-latency-us = <40>; + exit-latency-us = <100>; + min-residency-us = <150>; + }; + + CLUSTER_SLEEP_0: cluster-sleep-0 { + compatible = "arm,idle-state"; + entry-method-param = <0x1010000>; + entry-latency-us = <500>; + exit-latency-us = <1000>; + min-residency-us = <2500>; + }; + }; + + CPU0:cpu@0 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x0>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@1 { + + CPU1:cpu@1 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x1>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@2 { + + CPU2:cpu@2 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x2>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@3 { + + CPU3:cpu@3 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x3>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; }; diff --git a/fdts/fvp-foundation-gicv2legacy-psci.dtb b/fdts/fvp-foundation-gicv2legacy-psci.dtb index 58bb9b3aef92c5848ce739058007de643416a9d1..ed43254131d0d94a1466270f1b39dff12b214420 100644 GIT binary patch literal 7451 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 delta 1614 zcmah~O-NKx6u$R4zoyNvqcc;cBsGbo&4kJbIk*@^Luw=8E=*Hq#s<r<S|lyXMM!W# zqFjhX&@z;8(IzNx5#+Mm2Z6Q_TSwpbX0ATxDP1`4-h1x(zH{z5=gz!N@1_!)wSRvL z5#1F+^b1kHi8%oYK>QF4qZ#`7_les^Ak$G&Rbg^K7S%P^xkj;4(wbi$IU#S0cSk3w zQ8muEtT2?&+YOhsVS1m@ILZ(@>g8y0CX>Pf<CuV`w)@#|ov&Lgj1}%oKiCI1VYQ+h z?x%)WQ_tOvC&iaCHe;Twy9Zju7M2X%D};~N*Is{?^?JXp+B|7PY^e!Od+LoRYk+;n z6XVX~ZI@N5+k56hwFOs$HTgMW5Y5jbtf)CJ7`D`g_c5UT)lXW*8uU7iz{+~;_2|U{ zu{dBOTUY;7e{;xg_1QNPJcNP~$U6L27+cXFp@VsU&-KAFjlRvEoa&^C`&wXb+)ozL zqxoF&a$(|Og)K9oBj>!$y$T1qnr*DY*O$R5S$$+x`9Qpmcxtq7;;YnBpvxYW5OX** zEs>*ARMTVQ2rQM%l>*Z&WYwLdqcT)WFo*lU2o7b@ZcJsV;R(W!Ief|l@)6cn0us6o z&dqDOR7)s(5mYohpki&FL1BfH7WI+~>SgF`fSJ*i#QQ=fzJ_|tOgM3(@4!qr)v0hF z9|s!H;(}LV>u7UN*(LQ9Qs6z)U3i#q_T52*8m=#NJUmfn!cQCtcSB20$HUi4aCW-g zJ7E8T_eV_cXqF@3R9d|=-G}e~Ju<>V^M}puT~{YuP90Op!I`zuRHw}}&eo5UDo6{y zPt&tbBcq^LsYtJ@Q%RLjR~youpfg{vjZT|mHv35L(E=#wayYCu8`2TLL-0`%jcSSx zB;~8ru=y*=pvdx0BuAF9*85MEJ=F4tT8d^}68{RqrG7<wrAH-VgZSQyeNYSWM)fg% YsWv}3H8a~*oVYo4D?hfn6K|LQ0Dv33S^xk5 diff --git a/fdts/fvp-foundation-gicv2legacy-psci.dts b/fdts/fvp-foundation-gicv2legacy-psci.dts index 2a694f4f2..a923c3489 100644 --- a/fdts/fvp-foundation-gicv2legacy-psci.dts +++ b/fdts/fvp-foundation-gicv2legacy-psci.dts @@ -65,29 +65,73 @@ #address-cells = <2>; #size-cells = <0>; - cpu@0 { + cpu-map { + cluster0 { + core0 { + cpu = <&CPU0>; + }; + core1 { + cpu = <&CPU1>; + }; + core2 { + cpu = <&CPU2>; + }; + core3 { + cpu = <&CPU3>; + }; + }; + }; + + idle-states { + entry-method = "arm,psci"; + + CPU_SLEEP_0: cpu-sleep-0 { + compatible = "arm,idle-state"; + entry-method-param = <0x0010000>; + entry-latency-us = <40>; + exit-latency-us = <100>; + min-residency-us = <150>; + }; + + CLUSTER_SLEEP_0: cluster-sleep-0 { + compatible = "arm,idle-state"; + entry-method-param = <0x1010000>; + entry-latency-us = <500>; + exit-latency-us = <1000>; + min-residency-us = <2500>; + }; + }; + + CPU0:cpu@0 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x0>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@1 { + + CPU1:cpu@1 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x1>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@2 { + + CPU2:cpu@2 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x2>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@3 { + + CPU3:cpu@3 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x3>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; }; diff --git a/fdts/fvp-foundation-gicv3-psci.dtb b/fdts/fvp-foundation-gicv3-psci.dtb index 26800ba03a5a68bdedc448d677d688a798da9c78..724847c3c9a2e0db86ba826683e59ce456d9d9f5 100644 GIT binary patch delta 2290 zcmb7FO>7%Q6rR~Qw$rBdPm(4LL{7sYrt+4=hK4p$Q-NrJRBC#GC~&cy4K}qM%ReYV z5eabNfYhoZRlR{kFGw6fMG?myI22Ajw1=u3klIR>02zrMI3UFLt!JEF8>%qU?7ZLa zy?JkD=i!SN=aRP${Qa8{iHkyrSA`ghVohSkFiB%rTS7d2^PA+nwPlyG6^dl8*r?T= z>J%9anOmzmn&|-_z=W5u^mO&pU@*LT(zJ2)X=?p?;<WV{7t(Lgs}0(L3M)m&uGO=3 zr)I$VKzy97mQs~ku0SD%%vBn8t>`!v+fAE^L@<N2+r^-1JK;+rBYlD|z_C_lN8f^8 z@$lb+zM>w)l3Ti5|2v}W3Me0Y0w7?|BM*;&eGF<6x&u0dX&b>kEoheuWjNi@xBF__ znw)OJ(hPdD(0_OeNLd(lWP(A=ka`eJ4ic`T&3-tV?+xy44cBoh{BYdI-r#OWTG?gb zp`8L){cwcZ8{ALvN%c$5_|W~5Q(CKT5YqJ=$J$imfp;w#Q=bNojminF!6Kj4^rCBZ zJFslYQ);Sr^`LxBYoe~^TJP)B{N8)gl1nNToF8-Bar8rIIee!A7MFs@EIFZW1QW5m zR&yKuumnnQST<ESbcT?Np$}+zEA-J($t!O9LDL3!Gv+`5B1ris*EhqHL3u@8JGdP8 zdBF%^(a0PEEJhA7Kt3{i{!5L*98hGrB+JJsB7Xq<&U@+7$z1V5`uS4+eJU`tt>BT} z=izx`_o>H`nIm1OBJ$E{ZHcQZchuQvBG#uRY%YEK)Mj+1J0l^sp>(67<gJXV&MK11 zq%X9R@@9mS-p-JyVHJp>#S^L$JNHVn)epALHNql)&@{Jy7qmI3Op9AYU44N4DiEKy zo335!zsvBf{zI$`&yAVF3`72_T8}>yV^K^Gr$Fwgui|sD{g9gUneKk|SN!D@O&4Pq zow=QYmRFnByv~fqC?*ol2qO)=32(}}y?Obc>>VDYH*@Ot=HKbb-dA03)~nmwwB^4u zPYy9Q|Lon~6nbM5&A;#OhTcMVc~82%O-BcH)!hBTkSjZ4kjC5!E**LYNO8!!k(dLg z7m4Vmi=9YGl^ULXp($_*{soOEjA-nx=_YxcA9QkiU{HNMJUi4B1CVv(a(QH7`p?W8 z?k`e9SRs*K{v4KuPk4BUtr@jBawcdkfbLf}M`q;e<--edRh@OeR}asF{@JBdqo3vQ zJ_x5=uWr~Sr=DM1@iBHKTg{fVsE8N5oZGM)HQ}rm>b8e370PzisTEd?L9tM7tfwmZ cY#EQg`f)T7;p@Kpir3Vm(G%C7d+NCS2Q(Kh9{>OV delta 1550 zcmah}O-NKx6u$2{z8N)he$)B!ry?9gZPH3jVTL3X4RjF|Ce%1S9m5$1e<C5$T14;y zp%dgrGHB6C2y4-<g%F4fgLW;;oq<T}=sR!T)6qBKg?sP0=X~F}=jXn+7~O6SZ<YT2 zEksBaLi7j`xQ;!H>B4kkV#t2zZ6CtjvMUzJstT~#Fy|?v)K+R)rM|MI5OXmzofu~g z?bw3SVVnfD6}M1m;Mz=oay}e%td|m**;q3KjQr8C)_Ti(rPeo}Qd5&tbNk#HNE-c8 z?#p7C2JDRiv1)J`^2v|~uxqqrAC$!g{jrap6h93M*GZ$Kqn9lo9am(rN4t*hY+dS} zz{-QOK8SUXZWJ~4>K93)Q}L7<Yl^ovM=)|>lAfwTJAr*ex1t}|xdEJD_WI4DF23Gd z{8$#N^s4x2omhs^tTo6|8P4X2LI7D|{h75`Nv$G9DCrt>A7U|jmA<>8e(s6P(HzNR zgX-Pwr#snz!QpUNds6zcc`gNIfS$XnsX+157x#H9T9jRl0nTj12(;5vO_POw>ha`5 ziv<A9)PY_C`iIR=Tb^Og{i3)3oR$rfOQQp^NeM$nfYLN%nN|wIwB?O9X!?`NzIP6S zi!#rM1BULU9QtR};XCW<gvBf^I))%Jz9_v`D(I`P0}r?e_5*)h67C#-80_C+_-8#& z*5QL=-=}VYU5vAptr*Dvvp02iNnW=7SoTmk-_5VgdN=MoCh{Gftv|8-s+)PU%iO%V zu7~q}RB`8;rvG%Tcbi@C8dc*e^5C6&V0x<5D;V;R!IPT-mN+;Dp1GdbyV;kcp2D>2 zZ@;7o^gWL^6OCPeE#?`$M<?$E`hA-4SedjQ=)3T;`KJE!;%J!vRx}N+KsL{xbIwpp z-zXOBQlxFj3cU!nNP^abeOR3#UWY>6Sl{XLZs<+ri27hWq28UD%cx>X9TRFgK0Ki| gq|}+@<OtPNwUthcr)MA5XOi*s$b`CfyQ)R{2Vd&F8UO$Q diff --git a/fdts/fvp-foundation-gicv3-psci.dts b/fdts/fvp-foundation-gicv3-psci.dts index 1a841f3cd..49290e4e1 100644 --- a/fdts/fvp-foundation-gicv3-psci.dts +++ b/fdts/fvp-foundation-gicv3-psci.dts @@ -63,29 +63,73 @@ #address-cells = <2>; #size-cells = <0>; - cpu@0 { + cpu-map { + cluster0 { + core0 { + cpu = <&CPU0>; + }; + core1 { + cpu = <&CPU1>; + }; + core2 { + cpu = <&CPU2>; + }; + core3 { + cpu = <&CPU3>; + }; + }; + }; + + idle-states { + entry-method = "arm,psci"; + + CPU_SLEEP_0: cpu-sleep-0 { + compatible = "arm,idle-state"; + entry-method-param = <0x0010000>; + entry-latency-us = <40>; + exit-latency-us = <100>; + min-residency-us = <150>; + }; + + CLUSTER_SLEEP_0: cluster-sleep-0 { + compatible = "arm,idle-state"; + entry-method-param = <0x1010000>; + entry-latency-us = <500>; + exit-latency-us = <1000>; + min-residency-us = <2500>; + }; + }; + + CPU0:cpu@0 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x0>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@1 { + + CPU1:cpu@1 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x1>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@2 { + + CPU2:cpu@2 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x2>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; - cpu@3 { + + CPU3:cpu@3 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x3>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; }; }; -- GitLab