[PATCH] arm64: dts: exynos7: add support for cpuidle core power down

Lorenzo Pieralisi lorenzo.pieralisi at arm.com
Wed Oct 15 02:00:47 PDT 2014


On Wed, Oct 15, 2014 at 07:35:20AM +0100, Chander Kashyap wrote:
> Exynos7 has core power down state where cores can be powered off independently.
> This patch adds support for this state.

Please tell us more about the idle-state values you are adding, in particular
entry, exit latencies and min-residency values.

> Signed-off-by: Chander Kashyap <k.chander at samsung.com>
> ---
> This patch has following dependencies:
> 	- [PATCH v5 0/8] arch: arm64: Enable support for Samsung Exynos7 SoC
> 		http://www.spinics.net/lists/linux-samsung-soc/msg37047.html
> 	- [PATCH v9 0/8] ARM generic idle states
> 		http://permalink.gmane.org/gmane.linux.power-management.general/49224

Series above was merged, so dependency is stale.

>  arch/arm64/boot/dts/exynos/exynos7.dtsi |   18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/exynos/exynos7.dtsi b/arch/arm64/boot/dts/exynos/exynos7.dtsi
> index ce221ac..8e0a034 100644
> --- a/arch/arm64/boot/dts/exynos/exynos7.dtsi
> +++ b/arch/arm64/boot/dts/exynos/exynos7.dtsi
> @@ -36,6 +36,7 @@
>  			device_type = "cpu";
>  			compatible = "arm,cortex-a57", "arm,armv8";
>  			enable-method = "psci";
> +			cpu-idle-states = <&CPU_SLEEP>;

I would add cpu-idle-states phandle after the reg property, as defined
in the idle states bindings.

>  			reg = <0x0>;
>  		};
>  
> @@ -43,6 +44,7 @@
>  			device_type = "cpu";
>  			compatible = "arm,cortex-a57", "arm,armv8";
>  			enable-method = "psci";
> +			cpu-idle-states = <&CPU_SLEEP>;
>  			reg = <0x1>;
>  		};
>  
> @@ -50,6 +52,7 @@
>  			device_type = "cpu";
>  			compatible = "arm,cortex-a57", "arm,armv8";
>  			enable-method = "psci";
> +			cpu-idle-states = <&CPU_SLEEP>;
>  			reg = <0x2>;
>  		};
>  
> @@ -57,8 +60,23 @@
>  			device_type = "cpu";
>  			compatible = "arm,cortex-a57", "arm,armv8";
>  			enable-method = "psci";
> +			cpu-idle-states = <&CPU_SLEEP>;
>  			reg = <0x3>;
>  		};
> +
> +		idle-states {
> +			entry-method = "arm,psci";
> +
> +			CPU_SLEEP: cpu-sleep {
> +				compatible = "arm,idle-state";
> +				local-timer-stop;
> +				arm,psci-suspend-param = <0x0010000>;
> +				entry-latency-us = <20>;
> +				exit-latency-us = <150>;
> +				min-residency-us = <2100>;
> +				status = "enabled";

status ? This is not a documented property. If you need it please explain
why, define its bindings and we can see how to accommodate it.

Thank you,
Lorenzo

> +			};
> +		};
>  	};
>  
>  	psci {
> -- 
> 1.7.9.5
> 
> 




More information about the linux-arm-kernel mailing list