Bug 102783

Summary: [acpi] hw.acpi has thermal controls backwards when external power connected at bootup
Product: Base System Reporter: jboisvert
Component: kernAssignee: freebsd-acpi (Nobody) <acpi>
Status: Closed Overcome By Events    
Severity: Affects Only Me CC: jhb
Priority: Normal    
Version: Unspecified   
Hardware: Any   
OS: Any   

Description jboisvert 2006-09-02 14:00:36 UTC
I have a 2004 model gateway 450 laptop with intel centrino.

When I start the computer with the external power connected, I get a bitflip for acpi regarding power source vis-a-vis thermal control.

Here are the two main configurations seen from the output of 
'sysctl -a | grep thermal':

Normal state plugged in:

hw.acpi.thermal.min_runtime: 0
hw.acpi.thermal.polling_rate: 10
hw.acpi.thermal.tz0.temperature: 56.0C
hw.acpi.thermal.tz0.active: 1
hw.acpi.thermal.tz0.passive_cooling: 1
hw.acpi.thermal.tz0.thermal_flags: 0
hw.acpi.thermal.tz0._PSV: 92.0C
hw.acpi.thermal.tz0._HOT: -1
hw.acpi.thermal.tz0._CRT: 100.0C
hw.acpi.thermal.tz0._ACx: 60.0C 55.0C -1 -1 -1 -1 -1 -1 -1 -1

Normal state with battery:

hw.acpi.thermal.min_runtime: 0
hw.acpi.thermal.polling_rate: 10
hw.acpi.thermal.tz0.temperature: 57.0C
hw.acpi.thermal.tz0.active: -1
hw.acpi.thermal.tz0.passive_cooling: 1
hw.acpi.thermal.tz0.thermal_flags: 0
hw.acpi.thermal.tz0._PSV: 92.0C
hw.acpi.thermal.tz0._HOT: -1
hw.acpi.thermal.tz0._CRT: 100.0C
hw.acpi.thermal.tz0._ACx: 92.0C 87.0C -1 -1 -1 -1 -1 -1 -1 -1

Note that in the last line (_ACx) the values changed from 60.0C 55.0C to 92.0C 87.0C. This is what should be happening as far as I can tell. Having the higher temps means the fan turns on later with the battery.

The problem is these configurations are reversed when the computer is booted with the external power connected. I.e., if I start the computer plugged in and then unplug it, it will run the cooler version of thermal control and use more battery. Also, using this backwards configuration it obviously can get hotter than it should while plugged in.

Moreover, this is a recent problem that started -- I think -- with 6.1-Release. It may have started with 6.0-Release, but I know it wasn't happening for the prerelease of 6.0.

Thanks.
Jason Boisvert

Fix: 

It seems like the system assumes (or inaccurately assesses) from the start that the battery is the power source regardless of if this is true. It shouldn't be hard to change that behavior (I hope).
How-To-Repeat: Start the computer with the external power source connected.
Comment 1 Mark Linimon freebsd_committer freebsd_triage 2015-03-12 04:25:38 UTC
To submitter: is this aging PR still relevant?
Comment 2 jboisvert 2015-03-12 15:46:28 UTC
(In reply to Mark Linimon from comment #1)
This PR is no longer relevant. 

The problem originally occurred on a Gateway laptop that I no longer own. 

I can confirm that this problem does not happen in FBSD-10 on a Dell 620.
Comment 3 John Baldwin freebsd_committer freebsd_triage 2015-04-06 18:28:23 UTC
This would be hard to debug without access to a system that exhibits the problem.  It is possible that the power profile was incorrect, though if anything it should be the other way around (the system defaults to assuming it is in performance (i.e. non-battery) mode).