On 14/01/2020 11:11, James Liao wrote: > Enable mcdi-cpu and mcdi-cluster on MT8183 CPUs. > > Signed-off-by: James Liao <jamesjj.liao@xxxxxxxxxxxx> > --- > This patch bases on v5.5-rc6, adds idle-states for MT8183 CPUs. > > arch/arm64/boot/dts/mediatek/mt8183.dtsi | 30 ++++++++++++++++++++++++++++++ > 1 file changed, 30 insertions(+) > > diff --git a/arch/arm64/boot/dts/mediatek/mt8183.dtsi b/arch/arm64/boot/dts/mediatek/mt8183.dtsi > index 10b3247..a022325 100644 > --- a/arch/arm64/boot/dts/mediatek/mt8183.dtsi > +++ b/arch/arm64/boot/dts/mediatek/mt8183.dtsi > @@ -73,6 +73,7 @@ > reg = <0x000>; > enable-method = "psci"; > capacity-dmips-mhz = <741>; > + cpu-idle-states = <&MCDI_CPU &MCDI_CLUSTER>; > }; > > cpu1: cpu@1 { > @@ -81,6 +82,7 @@ > reg = <0x001>; > enable-method = "psci"; > capacity-dmips-mhz = <741>; > + cpu-idle-states = <&MCDI_CPU &MCDI_CLUSTER>; > }; > > cpu2: cpu@2 { > @@ -89,6 +91,7 @@ > reg = <0x002>; > enable-method = "psci"; > capacity-dmips-mhz = <741>; > + cpu-idle-states = <&MCDI_CPU &MCDI_CLUSTER>; > }; > > cpu3: cpu@3 { > @@ -97,6 +100,7 @@ > reg = <0x003>; > enable-method = "psci"; > capacity-dmips-mhz = <741>; > + cpu-idle-states = <&MCDI_CPU &MCDI_CLUSTER>; > }; > > cpu4: cpu@100 { > @@ -105,6 +109,7 @@ > reg = <0x100>; > enable-method = "psci"; > capacity-dmips-mhz = <1024>; > + cpu-idle-states = <&MCDI_CPU &MCDI_CLUSTER>; > }; > > cpu5: cpu@101 { > @@ -113,6 +118,7 @@ > reg = <0x101>; > enable-method = "psci"; > capacity-dmips-mhz = <1024>; > + cpu-idle-states = <&MCDI_CPU &MCDI_CLUSTER>; > }; > > cpu6: cpu@102 { > @@ -121,6 +127,7 @@ > reg = <0x102>; > enable-method = "psci"; > capacity-dmips-mhz = <1024>; > + cpu-idle-states = <&MCDI_CPU &MCDI_CLUSTER>; > }; > > cpu7: cpu@103 { > @@ -129,6 +136,29 @@ > reg = <0x103>; > enable-method = "psci"; > capacity-dmips-mhz = <1024>; > + cpu-idle-states = <&MCDI_CPU &MCDI_CLUSTER>; > + }; > + > + idle-states { > + entry-method = "arm,psci"; reading idle-states.txt the entry-method should be "psci". > + > + MCDI_CPU: mcdi-cpu { I wonder what MCDI stands for. Normally we have CPU_SLEEP and CLUSTER_SLEEP here. Regards, Matthias > + compatible = "arm,idle-state"; > + local-timer-stop; > + arm,psci-suspend-param = <0x00010001>; > + entry-latency-us = <200>; > + exit-latency-us = <200>; > + min-residency-us = <800>; > + }; > + > + MCDI_CLUSTER: mcdi-cluster { > + compatible = "arm,idle-state"; > + local-timer-stop; > + arm,psci-suspend-param = <0x01010001>; > + entry-latency-us = <250>; > + exit-latency-us = <400>; > + min-residency-us = <1300>; > + }; > }; > }; > >