diff mbox

[2/2] ARM: dts: bcm283x: Add critical thermal zone for GPU

Message ID 1486217787-15703-2-git-send-email-stefan.wahren@i2se.com (mailing list archive)
State Not Applicable, archived
Delegated to: Eduardo Valentin
Headers show

Commit Message

Stefan Wahren Feb. 4, 2017, 2:16 p.m. UTC
As suggested by Eduardo Valentin this adds the thermal zone for
the bcm2835 SoC. Since we currently don't have any cooling devices
leave this section empty.

Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
---
 arch/arm/boot/dts/bcm283x.dtsi |   19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

Comments

Eduardo Valentin Feb. 8, 2017, 4:19 a.m. UTC | #1
On Sat, Feb 04, 2017 at 02:16:27PM +0000, Stefan Wahren wrote:
> As suggested by Eduardo Valentin this adds the thermal zone for
> the bcm2835 SoC. Since we currently don't have any cooling devices
> leave this section empty.
> 
> Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
> ---
>  arch/arm/boot/dts/bcm283x.dtsi |   19 +++++++++++++++++++
>  1 file changed, 19 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi
> index 9c7ec7e..359da9d 100644
> --- a/arch/arm/boot/dts/bcm283x.dtsi
> +++ b/arch/arm/boot/dts/bcm283x.dtsi
> @@ -19,6 +19,25 @@
>  		bootargs = "earlyprintk console=ttyAMA0";
>  	};
>  
> +	thermal-zones {
> +		gpu_thermal: gpu-thermal {
> +			polling-delay-passive = <0>;
> +			polling-delay = <1000>;
> +
> +			thermal-sensors = <&thermal>;
> +
> +			trips {
> +				cpu-crit {
> +					temperature	= <80000>;
> +					hysteresis	= <0>;
> +					type		= "critical";
> +				};
> +			};
> +			cooling-maps {
> +			};
> +		};
> +	};
> +

This is fine with me. Checking the other patches in the series.

>  	soc {
>  		compatible = "simple-bus";
>  		#address-cells = <1>;
> -- 
> 1.7.9.5
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-pm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Eduardo Valentin Feb. 8, 2017, 4:23 a.m. UTC | #2
On Tue, Feb 07, 2017 at 08:19:31PM -0800, Eduardo Valentin wrote:
> On Sat, Feb 04, 2017 at 02:16:27PM +0000, Stefan Wahren wrote:
> > As suggested by Eduardo Valentin this adds the thermal zone for
> > the bcm2835 SoC. Since we currently don't have any cooling devices
> > leave this section empty.
> > 
> > Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
> > ---
> >  arch/arm/boot/dts/bcm283x.dtsi |   19 +++++++++++++++++++
> >  1 file changed, 19 insertions(+)
> > 
> > diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi
> > index 9c7ec7e..359da9d 100644
> > --- a/arch/arm/boot/dts/bcm283x.dtsi
> > +++ b/arch/arm/boot/dts/bcm283x.dtsi
> > @@ -19,6 +19,25 @@
> >  		bootargs = "earlyprintk console=ttyAMA0";
> >  	};
> >  
> > +	thermal-zones {
> > +		gpu_thermal: gpu-thermal {
> > +			polling-delay-passive = <0>;
> > +			polling-delay = <1000>;
> > +
> > +			thermal-sensors = <&thermal>;

Just came to my mind, dont you need to have an id to specify with sensor
points to gpu?

> > +
> > +			trips {
> > +				cpu-crit {
> > +					temperature	= <80000>;
> > +					hysteresis	= <0>;
> > +					type		= "critical";
> > +				};
> > +			};
> > +			cooling-maps {
> > +			};
> > +		};
> > +	};
> > +
> 
> This is fine with me. Checking the other patches in the series.
> 
> >  	soc {
> >  		compatible = "simple-bus";
> >  		#address-cells = <1>;
> > -- 
> > 1.7.9.5
> > 
--
To unsubscribe from this list: send the line "unsubscribe linux-pm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Stefan Wahren Feb. 8, 2017, 9:56 a.m. UTC | #3
Am 08.02.2017 um 05:23 schrieb Eduardo Valentin:
> On Tue, Feb 07, 2017 at 08:19:31PM -0800, Eduardo Valentin wrote:
>> On Sat, Feb 04, 2017 at 02:16:27PM +0000, Stefan Wahren wrote:
>>> As suggested by Eduardo Valentin this adds the thermal zone for
>>> the bcm2835 SoC. Since we currently don't have any cooling devices
>>> leave this section empty.
>>>
>>> Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
>>> ---
>>>  arch/arm/boot/dts/bcm283x.dtsi |   19 +++++++++++++++++++
>>>  1 file changed, 19 insertions(+)
>>>
>>> diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi
>>> index 9c7ec7e..359da9d 100644
>>> --- a/arch/arm/boot/dts/bcm283x.dtsi
>>> +++ b/arch/arm/boot/dts/bcm283x.dtsi
>>> @@ -19,6 +19,25 @@
>>>  		bootargs = "earlyprintk console=ttyAMA0";
>>>  	};
>>>  
>>> +	thermal-zones {
>>> +		gpu_thermal: gpu-thermal {
>>> +			polling-delay-passive = <0>;
>>> +			polling-delay = <1000>;
>>> +
>>> +			thermal-sensors = <&thermal>;
> Just came to my mind, dont you need to have an id to specify with sensor
> points to gpu?

Sorry, i don't know the exact setup of the single thermal sensor on the
SoC (datasheet doesn't provide any helpful information). I adapted the
Renesas R-Car thermal binding because i think it would be the best match.

@Eric: What's your opinion?

>
>>> +
>>> +			trips {
>>> +				cpu-crit {
>>> +					temperature	= <80000>;
>>> +					hysteresis	= <0>;
>>> +					type		= "critical";
>>> +				};
>>> +			};
>>> +			cooling-maps {
>>> +			};
>>> +		};
>>> +	};
>>> +
>> This is fine with me. Checking the other patches in the series.
>>
>>>  	soc {
>>>  		compatible = "simple-bus";
>>>  		#address-cells = <1>;
>>> -- 
>>> 1.7.9.5
>>>

--
To unsubscribe from this list: send the line "unsubscribe linux-pm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Eric Anholt Feb. 8, 2017, 7:50 p.m. UTC | #4
Stefan Wahren <stefan.wahren@i2se.com> writes:

> Am 08.02.2017 um 05:23 schrieb Eduardo Valentin:
>> On Tue, Feb 07, 2017 at 08:19:31PM -0800, Eduardo Valentin wrote:
>>> On Sat, Feb 04, 2017 at 02:16:27PM +0000, Stefan Wahren wrote:
>>>> As suggested by Eduardo Valentin this adds the thermal zone for
>>>> the bcm2835 SoC. Since we currently don't have any cooling devices
>>>> leave this section empty.
>>>>
>>>> Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
>>>> ---
>>>>  arch/arm/boot/dts/bcm283x.dtsi |   19 +++++++++++++++++++
>>>>  1 file changed, 19 insertions(+)
>>>>
>>>> diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi
>>>> index 9c7ec7e..359da9d 100644
>>>> --- a/arch/arm/boot/dts/bcm283x.dtsi
>>>> +++ b/arch/arm/boot/dts/bcm283x.dtsi
>>>> @@ -19,6 +19,25 @@
>>>>  		bootargs = "earlyprintk console=ttyAMA0";
>>>>  	};
>>>>  
>>>> +	thermal-zones {
>>>> +		gpu_thermal: gpu-thermal {
>>>> +			polling-delay-passive = <0>;
>>>> +			polling-delay = <1000>;
>>>> +
>>>> +			thermal-sensors = <&thermal>;
>> Just came to my mind, dont you need to have an id to specify with sensor
>> points to gpu?
>
> Sorry, i don't know the exact setup of the single thermal sensor on the
> SoC (datasheet doesn't provide any helpful information). I adapted the
> Renesas R-Car thermal binding because i think it would be the best match.
>
> @Eric: What's your opinion?

I don't understand the question.
Stefan Wahren Feb. 9, 2017, 5:48 p.m. UTC | #5
Hi Eric,

> Eric Anholt <eric@anholt.net> hat am 8. Februar 2017 um 20:50 geschrieben:
> 
> 
> Stefan Wahren <stefan.wahren@i2se.com> writes:
> 
> > Am 08.02.2017 um 05:23 schrieb Eduardo Valentin:
> >> On Tue, Feb 07, 2017 at 08:19:31PM -0800, Eduardo Valentin wrote:
> >>> On Sat, Feb 04, 2017 at 02:16:27PM +0000, Stefan Wahren wrote:
> >>>> As suggested by Eduardo Valentin this adds the thermal zone for
> >>>> the bcm2835 SoC. Since we currently don't have any cooling devices
> >>>> leave this section empty.
> >>>>
> >>>> Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
> >>>> ---
> >>>>  arch/arm/boot/dts/bcm283x.dtsi |   19 +++++++++++++++++++
> >>>>  1 file changed, 19 insertions(+)
> >>>>
> >>>> diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi
> >>>> index 9c7ec7e..359da9d 100644
> >>>> --- a/arch/arm/boot/dts/bcm283x.dtsi
> >>>> +++ b/arch/arm/boot/dts/bcm283x.dtsi
> >>>> @@ -19,6 +19,25 @@
> >>>>  		bootargs = "earlyprintk console=ttyAMA0";
> >>>>  	};
> >>>>  
> >>>> +	thermal-zones {
> >>>> +		gpu_thermal: gpu-thermal {
> >>>> +			polling-delay-passive = <0>;
> >>>> +			polling-delay = <1000>;
> >>>> +
> >>>> +			thermal-sensors = <&thermal>;
> >> Just came to my mind, dont you need to have an id to specify with sensor
> >> points to gpu?
> >
> > Sorry, i don't know the exact setup of the single thermal sensor on the
> > SoC (datasheet doesn't provide any helpful information). I adapted the
> > Renesas R-Car thermal binding because i think it would be the best match.
> >
> > @Eric: What's your opinion?
> 
> I don't understand the question.

i hope to get it right. We are talking about defining the thermal zone [1].

There are 4 examples:

(a) - CPU thermal zone with one internal sensor
(b) - IC with several internal sensors
(c) - Several sensors within one single thermal zone
(d) - Board thermal

I decided to choose (a) for the patch and Eduardo tends to (b).

Here are the questions:

Where is the thermal sensor TSENS located (ARM core or VideoCore 4)?

Do we expect several internal sensors?

[1] - http://lxr.free-electrons.com/source/Documentation/devicetree/bindings/thermal/thermal.txt
--
To unsubscribe from this list: send the line "unsubscribe linux-pm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Eric Anholt Feb. 9, 2017, 11:34 p.m. UTC | #6
Stefan Wahren <stefan.wahren@i2se.com> writes:

> Hi Eric,
>
>> Eric Anholt <eric@anholt.net> hat am 8. Februar 2017 um 20:50 geschrieben:
>> 
>> 
>> Stefan Wahren <stefan.wahren@i2se.com> writes:
>> 
>> > Am 08.02.2017 um 05:23 schrieb Eduardo Valentin:
>> >> On Tue, Feb 07, 2017 at 08:19:31PM -0800, Eduardo Valentin wrote:
>> >>> On Sat, Feb 04, 2017 at 02:16:27PM +0000, Stefan Wahren wrote:
>> >>>> As suggested by Eduardo Valentin this adds the thermal zone for
>> >>>> the bcm2835 SoC. Since we currently don't have any cooling devices
>> >>>> leave this section empty.
>> >>>>
>> >>>> Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
>> >>>> ---
>> >>>>  arch/arm/boot/dts/bcm283x.dtsi |   19 +++++++++++++++++++
>> >>>>  1 file changed, 19 insertions(+)
>> >>>>
>> >>>> diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi
>> >>>> index 9c7ec7e..359da9d 100644
>> >>>> --- a/arch/arm/boot/dts/bcm283x.dtsi
>> >>>> +++ b/arch/arm/boot/dts/bcm283x.dtsi
>> >>>> @@ -19,6 +19,25 @@
>> >>>>  		bootargs = "earlyprintk console=ttyAMA0";
>> >>>>  	};
>> >>>>  
>> >>>> +	thermal-zones {
>> >>>> +		gpu_thermal: gpu-thermal {
>> >>>> +			polling-delay-passive = <0>;
>> >>>> +			polling-delay = <1000>;
>> >>>> +
>> >>>> +			thermal-sensors = <&thermal>;
>> >> Just came to my mind, dont you need to have an id to specify with sensor
>> >> points to gpu?
>> >
>> > Sorry, i don't know the exact setup of the single thermal sensor on the
>> > SoC (datasheet doesn't provide any helpful information). I adapted the
>> > Renesas R-Car thermal binding because i think it would be the best match.
>> >
>> > @Eric: What's your opinion?
>> 
>> I don't understand the question.
>
> i hope to get it right. We are talking about defining the thermal zone [1].
>
> There are 4 examples:
>
> (a) - CPU thermal zone with one internal sensor
> (b) - IC with several internal sensors
> (c) - Several sensors within one single thermal zone
> (d) - Board thermal
>
> I decided to choose (a) for the patch and Eduardo tends to (b).
>
> Here are the questions:
>
> Where is the thermal sensor TSENS located (ARM core or VideoCore 4)?
>
> Do we expect several internal sensors?

There is only one temperature sensor on the chip, and no others on the
board that I know of.  The docs for tsens don't say if the actual sensor
is closer to the center of the ARM or some VC4 component within the
chip.
diff mbox

Patch

diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi
index 9c7ec7e..359da9d 100644
--- a/arch/arm/boot/dts/bcm283x.dtsi
+++ b/arch/arm/boot/dts/bcm283x.dtsi
@@ -19,6 +19,25 @@ 
 		bootargs = "earlyprintk console=ttyAMA0";
 	};
 
+	thermal-zones {
+		gpu_thermal: gpu-thermal {
+			polling-delay-passive = <0>;
+			polling-delay = <1000>;
+
+			thermal-sensors = <&thermal>;
+
+			trips {
+				cpu-crit {
+					temperature	= <80000>;
+					hysteresis	= <0>;
+					type		= "critical";
+				};
+			};
+			cooling-maps {
+			};
+		};
+	};
+
 	soc {
 		compatible = "simple-bus";
 		#address-cells = <1>;