[edk2-devel] [PATCH] Platform/RaspberryPi4: Correct thermal offset

Jeremy Linton posted 1 patch 3 years, 7 months ago
Failed in applying to current master (apply log)
Platform/RaspberryPi/AcpiTables/Dsdt.asl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[edk2-devel] [PATCH] Platform/RaspberryPi4: Correct thermal offset
Posted by Jeremy Linton 3 years, 7 months ago
The current mainline DT indicates that the thermal offset
on the rpi is 410040 rather than the 419949 being used.
This means our temp calculation is offset nearly 10C higher
when running in ACPI mode vs DT.

Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
---
 Platform/RaspberryPi/AcpiTables/Dsdt.asl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Platform/RaspberryPi/AcpiTables/Dsdt.asl b/Platform/RaspberryPi/AcpiTables/Dsdt.asl
index 2b9e8211cf..d116f965e1 100644
--- a/Platform/RaspberryPi/AcpiTables/Dsdt.asl
+++ b/Platform/RaspberryPi/AcpiTables/Dsdt.asl
@@ -269,7 +269,7 @@ DefinitionBlock ("Dsdt.aml", "DSDT", 5, "RPIFDN", "RPI", 2)
           Field (TEMS, DWordAcc, NoLock, Preserve) {
             TMPS, 32
           }
-          return (((419949 - ((TMPS & 0x3ff) * 487)) / 100) + 2732);
+          return (((410040 - ((TMPS & 0x3ff) * 487)) / 100) + 2732);
         }
         Method (_SCP, 3) { }               // receive cooling policy from OS
 
-- 
2.13.7


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#65167): https://edk2.groups.io/g/devel/message/65167
Mute This Topic: https://groups.io/mt/76744696/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-

Re: [edk2-devel] [PATCH] Platform/RaspberryPi4: Correct thermal offset
Posted by Ard Biesheuvel 3 years, 6 months ago
On 9/10/20 1:11 AM, Jeremy Linton wrote:
> The current mainline DT indicates that the thermal offset
> on the rpi is 410040 rather than the 419949 being used.
> This means our temp calculation is offset nearly 10C higher
> when running in ACPI mode vs DT.
> 
> Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
> ---
>   Platform/RaspberryPi/AcpiTables/Dsdt.asl | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/Platform/RaspberryPi/AcpiTables/Dsdt.asl b/Platform/RaspberryPi/AcpiTables/Dsdt.asl
> index 2b9e8211cf..d116f965e1 100644
> --- a/Platform/RaspberryPi/AcpiTables/Dsdt.asl
> +++ b/Platform/RaspberryPi/AcpiTables/Dsdt.asl
> @@ -269,7 +269,7 @@ DefinitionBlock ("Dsdt.aml", "DSDT", 5, "RPIFDN", "RPI", 2)
>             Field (TEMS, DWordAcc, NoLock, Preserve) {
>               TMPS, 32
>             }
> -          return (((419949 - ((TMPS & 0x3ff) * 487)) / 100) + 2732);
> +          return (((410040 - ((TMPS & 0x3ff) * 487)) / 100) + 2732);
>           }
>           Method (_SCP, 3) { }               // receive cooling policy from OS
>   
> 

Reviewed-by: Ard Biesheuvel <ard.biesheuvel@arm.com>

Pushed as dc6a619f933f..78c884bbe7d3


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#66537): https://edk2.groups.io/g/devel/message/66537
Mute This Topic: https://groups.io/mt/76744696/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH] Platform/RaspberryPi4: Correct thermal offset
Posted by Pete Batard 3 years, 7 months ago
It might be worth sourcing public documentation, if you have any, 
indicating where these numeric values ultimately come from (the offset 
for absolute zero is easy to figure out, but the rest, not so much).

Apart from that:

On 2020.09.10 00:11, Jeremy Linton wrote:
> The current mainline DT indicates that the thermal offset
> on the rpi is 410040 rather than the 419949 being used.
> This means our temp calculation is offset nearly 10C higher
> when running in ACPI mode vs DT.
> 
> Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
> ---
>   Platform/RaspberryPi/AcpiTables/Dsdt.asl | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/Platform/RaspberryPi/AcpiTables/Dsdt.asl b/Platform/RaspberryPi/AcpiTables/Dsdt.asl
> index 2b9e8211cf..d116f965e1 100644
> --- a/Platform/RaspberryPi/AcpiTables/Dsdt.asl
> +++ b/Platform/RaspberryPi/AcpiTables/Dsdt.asl
> @@ -269,7 +269,7 @@ DefinitionBlock ("Dsdt.aml", "DSDT", 5, "RPIFDN", "RPI", 2)
>             Field (TEMS, DWordAcc, NoLock, Preserve) {
> 
>               TMPS, 32
> 
>             }
> 
> -          return (((419949 - ((TMPS & 0x3ff) * 487)) / 100) + 2732);
> 
> +          return (((410040 - ((TMPS & 0x3ff) * 487)) / 100) + 2732);
> 
>           }
> 
>           Method (_SCP, 3) { }               // receive cooling policy from OS
> 
>   
> 

Reviewed-by: Pete Batard <pete@akeo.ie>

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#65195): https://edk2.groups.io/g/devel/message/65195
Mute This Topic: https://groups.io/mt/76744696/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-

Re: [edk2-devel] [PATCH] Platform/RaspberryPi4: Correct thermal offset
Posted by Jeremy Linton 3 years, 7 months ago
Hi,
On 9/11/20 1:13 PM, Pete Batard wrote:
> It might be worth sourcing public documentation, if you have any, 
> indicating where these numeric values ultimately come from (the offset 
> for absolute zero is easy to figure out, but the rest, not so much).

I'm only privy to things that can be found with a google search.

So at the moment I'm not aware of proper first party documentation on 
the thermal sensor.

So 
https://elixir.bootlin.com/linux/v5.9-rc4/source/arch/arm/boot/dts/bcm2711.dtsi#L413 
gives us the base+slope values (410040, 487). Given the linux the units 
are in 1/1000h C, the remainder of the calculation is to adjust to 1/10th K.

There is also 
https://www.raspberrypi.org/documentation/hardware/raspberrypi/frequency-management.md

There is also a bit of documentation around "temp_limit"

https://www.raspberrypi.org/documentation/configuration/config-txt/overclocking.md

Which names 80-85C as the region that the cores should be throttled and 
some other thermal recommendations.

Finally, various mentions of the AVS (beyond the official document 
naming the int, but not the base address despite it being in the DT) in 
commit messages/etc help to clarify things, but none are particularly 
helpful on their own.


> 
> Apart from that:
> 
> On 2020.09.10 00:11, Jeremy Linton wrote:
>> The current mainline DT indicates that the thermal offset
>> on the rpi is 410040 rather than the 419949 being used.
>> This means our temp calculation is offset nearly 10C higher
>> when running in ACPI mode vs DT.
>>
>> Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
>> ---
>>   Platform/RaspberryPi/AcpiTables/Dsdt.asl | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/Platform/RaspberryPi/AcpiTables/Dsdt.asl 
>> b/Platform/RaspberryPi/AcpiTables/Dsdt.asl
>> index 2b9e8211cf..d116f965e1 100644
>> --- a/Platform/RaspberryPi/AcpiTables/Dsdt.asl
>> +++ b/Platform/RaspberryPi/AcpiTables/Dsdt.asl
>> @@ -269,7 +269,7 @@ DefinitionBlock ("Dsdt.aml", "DSDT", 5, "RPIFDN", 
>> "RPI", 2)
>>             Field (TEMS, DWordAcc, NoLock, Preserve) {
>>
>>               TMPS, 32
>>
>>             }
>>
>> -          return (((419949 - ((TMPS & 0x3ff) * 487)) / 100) + 2732);
>>
>> +          return (((410040 - ((TMPS & 0x3ff) * 487)) / 100) + 2732);
>>
>>           }
>>
>>           Method (_SCP, 3) { }               // receive cooling policy 
>> from OS
>>
>>
> 
> Reviewed-by: Pete Batard <pete@akeo.ie>


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#65197): https://edk2.groups.io/g/devel/message/65197
Mute This Topic: https://groups.io/mt/76744696/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-