Re: [edk2-devel] [PATCH] Platform/RaspberryPi4: Correct thermal offset
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 --- 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 -=-=-=-=-=-=-=-=-=-=-=- 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/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH] Platform/RaspberryPi4: Correct thermal offset
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 --- 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 -=-=-=-=-=-=-=-=-=-=-=- 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/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [PATCH] Platform/RaspberryPi4: Correct thermal offset
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 --- 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/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-