Message ID | 1435815465-501-1-git-send-email-cw00.choi@samsung.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
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 <kgene@kernel.org> > Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com> > Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> > Acked-by: Kyungmin Park <kyungmin.park@samsung.com> > --- > 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? Best regards, Krzysztof > operating-points = < > 1000000 1150000 >
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 <kgene@kernel.org> >> Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com> >> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> >> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> >> --- >> 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, Chanwoo Choi
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 <kgene@kernel.org> >>> Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com> >>> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> >>> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> >>> --- >>> 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 <k.kozlowski@samsung.com> Best regards, Krzysztof
2015-07-02 16:17 GMT+09:00 Krzysztof Kozlowski <k.kozlowski@samsung.com>: > 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 <kgene@kernel.org> >>>> Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com> >>>> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> >>>> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> >>>> --- >>>> 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 <k.kozlowski@samsung.com> > > 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? Best regards, Krzysztof
Krzysztof Kozlowski wrote: > > 2015-07-02 16:17 GMT+09:00 Krzysztof Kozlowski <k.kozlowski@samsung.com>: > > 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 <kgene@kernel.org> > >>>> Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com> > >>>> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> > >>>> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> > >>>> --- > >>>> 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 <k.kozlowski@samsung.com> > > > > 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? Thanks, Kukjin
On 07.07.2015 23:40, Kukjin Kim wrote: > Krzysztof Kozlowski wrote: >> >> 2015-07-02 16:17 GMT+09:00 Krzysztof Kozlowski <k.kozlowski@samsung.com>: >>> 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 <kgene@kernel.org> >>>>>> Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com> >>>>>> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> >>>>>> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> >>>>>> --- >>>>>> 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 <k.kozlowski@samsung.com> >>> >>> 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
Dear Kukjin, Please pick this patch because exynos3250-cpufreq patch-set was already merged on linux-samsung.git. Thanks, Chanwoo Choi On 07/08/2015 09:19 AM, Krzysztof Kozlowski wrote: > On 07.07.2015 23:40, Kukjin Kim wrote: >> Krzysztof Kozlowski wrote: >>> >>> 2015-07-02 16:17 GMT+09:00 Krzysztof Kozlowski <k.kozlowski@samsung.com>: >>>> 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 <kgene@kernel.org> >>>>>>> Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com> >>>>>>> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> >>>>>>> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> >>>>>>> --- >>>>>>> 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 <k.kozlowski@samsung.com> >>>> >>>> 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 > -- > To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html >
On 07/29/15 15:35, Chanwoo Choi wrote: > Dear Kukjin, > > Please pick this patch because exynos3250-cpufreq patch-set > was already merged on linux-samsung.git. > Applied, thanks. - Kukjin > Thanks, > Chanwoo Choi > > On 07/08/2015 09:19 AM, Krzysztof Kozlowski wrote: >> On 07.07.2015 23:40, Kukjin Kim wrote: >>> Krzysztof Kozlowski wrote: >>>> >>>> 2015-07-02 16:17 GMT+09:00 Krzysztof Kozlowski <k.kozlowski@samsung.com>: >>>>> 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 <kgene@kernel.org> >>>>>>>> Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com> >>>>>>>> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> >>>>>>>> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> >>>>>>>> --- >>>>>>>> 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 <k.kozlowski@samsung.com> >>>>> >>>>> 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
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>; operating-points = < 1000000 1150000