From mboxrd@z Thu Jan 1 00:00:00 1970 From: k.kozlowski@samsung.com (Krzysztof Kozlowski) Date: Wed, 08 Jul 2015 09:19:26 +0900 Subject: [PATCH] ARM: dts: Add CPU cooling binding for Exynos3250-based Rinato/Monk board In-Reply-To: <092101d0b8c2$e2b39310$a81ab930$@kernel.org> References: <1435815465-501-1-git-send-email-cw00.choi@samsung.com> <5594D22C.4040206@samsung.com> <5594D5F4.3060508@samsung.com> <5594E57C.2010300@samsung.com> <092101d0b8c2$e2b39310$a81ab930$@kernel.org> Message-ID: <559C6C8E.2070309@samsung.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On 07.07.2015 23:40, Kukjin Kim wrote: > Krzysztof Kozlowski wrote: >> >> 2015-07-02 16:17 GMT+09:00 Krzysztof Kozlowski : >>> On 02.07.2015 15:11, Chanwoo Choi wrote: >>>> On 07/02/2015 02:54 PM, Krzysztof Kozlowski wrote: >>>>> On 02.07.2015 14:37, Chanwoo Choi wrote: >>>>>> This patch add the cooling device to control the overheating issue on >>>>>> Exynos3250-based Rinato/Monk board. >>>>>> >>>>>> Cc: Kukjin Kim >>>>>> Cc: Krzysztof Kozlowski >>>>>> Signed-off-by: Chanwoo Choi >>>>>> Acked-by: Kyungmin Park >>>>>> --- >>>>>> Depends on: >>>>>> This patch needs the cpufreq support of Exynos3250 SoC. So, this patch has the >>>>>> dependency on patch[1] which support the generic cpufreq for Exynos3250 SoC. >>>>>> [1] https://lkml.org/lkml/2015/7/1/696 >>>>>> : [PATCH v6 0/3] cpufreq: Use cpufreq-dt driver for Exynos3250 >>>>>> >>>>>> arch/arm/boot/dts/exynos3250-monk.dts | 15 +++++++++++++++ >>>>>> arch/arm/boot/dts/exynos3250-rinato.dts | 15 +++++++++++++++ >>>>>> arch/arm/boot/dts/exynos3250.dtsi | 1 + >>>>>> 3 files changed, 31 insertions(+) >>>>>> >>>>>> diff --git a/arch/arm/boot/dts/exynos3250-monk.dts b/arch/arm/boot/dts/exynos3250-monk.dts >>>>>> index 7863265d4868..540a0adf2be6 100644 >>>>>> --- a/arch/arm/boot/dts/exynos3250-monk.dts >>>>>> +++ b/arch/arm/boot/dts/exynos3250-monk.dts >>>>>> @@ -116,6 +116,21 @@ >>>>>> min-microvolt = <1100000>; >>>>>> max-microvolt = <2700000>; >>>>>> }; >>>>>> + >>>>>> + thermal-zones { >>>>>> + cpu_thermal: cpu-thermal { >>>>>> + cooling-maps { >>>>>> + map0 { >>>>>> + /* Correspond to 500MHz at freq_table */ >>>>>> + cooling-device = <&cpu0 5 5>; >>>>>> + }; >>>>>> + map1 { >>>>>> + /* Correspond to 200MHz at freq_table */ >>>>>> + cooling-device = <&cpu0 8 8>; >>>>>> + }; >>>>>> + }; >>>>>> + }; >>>>>> + }; >>>>>> }; >>>>>> >>>>>> &adc { >>>>>> diff --git a/arch/arm/boot/dts/exynos3250-rinato.dts b/arch/arm/boot/dts/exynos3250-rinato.dts >>>>>> index ddd7ac283045..0e62a6435e07 100644 >>>>>> --- a/arch/arm/boot/dts/exynos3250-rinato.dts >>>>>> +++ b/arch/arm/boot/dts/exynos3250-rinato.dts >>>>>> @@ -107,6 +107,21 @@ >>>>>> min-microvolt = <1100000>; >>>>>> max-microvolt = <2700000>; >>>>>> }; >>>>>> + >>>>>> + thermal-zones { >>>>>> + cpu_thermal: cpu-thermal { >>>>>> + cooling-maps { >>>>>> + map0 { >>>>>> + /* Corresponds to 500MHz */ >>>>>> + cooling-device = <&cpu0 5 5>; >>>>>> + }; >>>>>> + map1 { >>>>>> + /* Corresponds to 200MHz */ >>>>>> + cooling-device = <&cpu0 8 8>; >>>>>> + }; >>>>>> + }; >>>>>> + }; >>>>>> + }; >>>>>> }; >>>>>> >>>>>> &adc { >>>>>> diff --git a/arch/arm/boot/dts/exynos3250.dtsi b/arch/arm/boot/dts/exynos3250.dtsi >>>>>> index e0f3b2ed41a3..a4931b660ddb 100644 >>>>>> --- a/arch/arm/boot/dts/exynos3250.dtsi >>>>>> +++ b/arch/arm/boot/dts/exynos3250.dtsi >>>>>> @@ -55,6 +55,7 @@ >>>>>> clock-frequency = <1000000000>; >>>>>> clocks = <&cmu CLK_ARM_CLK>; >>>>>> clock-names = "cpu"; >>>>>> + #cooling-cells = <2>; >>>>>> >>>>> >>>>> Don't you need also cooling-{min,max}-state properties? >>>> >>>> Yes, it is well working without cooling-{min,max}-state or cooling-{min,max}-level. >>>> >>>> I look for the some code to parse "cooling-{min,max}-state or cooling-{min,max}-level" >>>> in drivers/thermal/*. But, there are no any code to parse it. >>>> >>>> But, Documentation/devicetree/bindings/thermal/thermal.txt contains just the 'cooling-{min,max}- >> state. >>>> >>>> I think that there are mismatch between document and thermal core driver. >>> >>> Thanks for explanation, looks good. >>> Acked-by: Krzysztof Kozlowski >>> >>> Best regards, >>> Krzysztof >> >> Dear Kukjin, >> >> Recent four patchsets (4210 CPU OPP in DTS, cpufreq-dt 5250, >> cpufreq-dt 3250, this patch) are actually an one continuous chain. >> Dependencies are already in mainline. Are you gonna to pick up >> everything? >> > Yes, I want and I will. BTW maybe clk change is required together? If so, as you > know we need to get ack from clk guy. Is my understanding right? Right. I think the samsung clock and cpufreq patches still need acks. Best regards, Krzysztof