The DSDT of my HP tx2510 contains the following code: Method (_HOT, 0, Serialized) { If (LEqual (TPOS, 0x40)) { Return (Add (0x0AAC, Multiply (TPC, 0x0A))) } } Method (_CRT, 0, Serialized) { If (LLess (TPOS, 0x40)) { Return (Add (0x0AAC, Multiply (TPC, 0x0A))) } } which basically disables thermal sensors for any operating system that is not Windows. For more details, see https://wiki.edubuntu.org/LaptopTestingTeam/Old/HPdv5z which also suggests to comment out the check. Since it is no more possible to load customized DSDTs however, the above howto is now useless, but I was told that the problem can be fixed directly in the kernel. Needless to say I tried contacting HP in all ways I could conceive, but (also because my warranty is over) I doubt anyone there cared at all - certainly, I was not contacted back and there were no BIOS updates in the last year. In case it's useful, the current BIOS can be downloaded through: http://ftp.hp.com/pub/softpaq/sp45001-45500/sp45056.exe I'm available for any additional information/testing.
Launchpad related bug: https://bugs.launchpad.net/linux/+bug/461789
can you attach the dsdt table of your laptop? BTW: we can still override the DSDT table, please refer to http://www.lesswatts.org/projects/acpi/overridingDSDT.php
Created attachment 39112 [details] Original DSDT table
> can you attach the dsdt table of your laptop? Sure, I attached the result of "cp /proc/acpi/dsdt DSDT". > BTW: we can still override the DSDT table, please refer to > http://www.lesswatts.org/projects/acpi/overridingDSDT.php Yep, sorry for the misunderstanding: I knew but implicitly assumed recompiling the kernel is not a solution (at least not for everyone).
Oh, so the problem is that "no _CRT results in thermal driver load failure"? If yes, I think the problem has been fixed by: commit fa80945269f312bc609e8384302f58b03c916e12 Author: Thomas Renninger <trenn@suse.de> Date: Sat Feb 20 11:44:27 2010 +0100 ACPI thermal: Don't invalidate thermal zone if critical trip point is bad V2: Corrected integer/long conversion. Some BIOSes return a negative value for the critical trip point. Especially since Windows 2006... We currently invalidate the whole thermal zone in this case. But it may still be needed for cooling, also without critical trip point. This patch invalidates the critical trip point if no _CRT function is found or if it returns negative values, but does not invalidate the whole thermal zone in this case. Reference: http://bugzilla.novell.com/show_bug.cgi?id=531547 Signed-off-by: Thomas Renninger <trenn@suse.de> Tested-by: clarkt@cnsp.com Acked-by: Zhang Rui <rui.zhang@intel.com> Signed-off-by: Len Brown <len.brown@intel.com> Why not try a kernel later than 2.6.34 and see if the problem still exist?
Ahem,(In reply to comment #5) > Oh, so the problem is that "no _CRT results in thermal driver load failure"? I have no idea of what that means, but... > > Why not try a kernel later than 2.6.34 and see if the problem still exist? Yep, tried with 2.6.36 and it works. Sorry for the noise: the problem was there since a while and hence I didn't consider trying a new kernel. Pietro