acpi_thermal User Overriden Parameters Reset on Power State Change

Alexandre "Sunny" Kovalenko alex.kovalenko at verizon.net
Wed Nov 21 12:11:21 PST 2007


On Tue, 2007-11-20 at 16:25 +1100, Nick Withers wrote:
> Hi y'all,
> 
> Firstly, sorry if this isn't entirely the correct place to post this,
I think acpi@ would be the better place (forwarded).
 
> for starters I'm not sure whether this problem is limited to -CURRENT
> and / or 7.0 or not. Tried to have a look at fixing it myself, but I'm
> not l33t enough! :-)
> 
> On my Compaq Presario B3820 (PV142PA#ABG) laptop, I override the
> hw.acpi.thermal.tz0._PSV value because the default is the temperature at
> which the CPU is halted by the hardware until the temperature settles
> down. Since this gets triggered fairly often and is pretty annoying, I
> lower the trigger temperature level and have powerd(8) work
> passive-cooling-shaped magic.
> 
> However, disconnecting or reconnecting AC power resets the value to the
> BIOS provided level.
> 
> Would anyone be able to offer assistance with this? It's not too big a
> deal, I just have to remember to set the appropriate value again if the
> power state changes.
> 
At the very least, you do not have to remember to do this: at the bottom 
of /etc/devd.conf there is an example on how to associate your custom 
script with AC state changes. Look for something like:

# This example calls a script when the AC state changes, passing the
# notify value as the first argument.  If the state is 0x00, it might
# call some sysctls to implement economy mode.  If 0x01, it might set
# the mode to performance.
notify 10 {
        match "system"          "ACPI";
        match "subsystem"       "ACAD";
        action                  "/etc/acpi_ac $notify";
};

As to changing _PSV value for good: you can dump your ASL (look for 
instructions in the Handbook), then look for something like

                        Method (_PSV, 0, NotSerialized)
                        {
                            Return (0xE30)
                        }

modify value, remembering that <return value> = <degree C> * 10 + 2732, 
recompile your ASL and override it on boot (handbook comes handy there as well).

HTH,

-- 
Alexandre "Sunny" Kovalenko



More information about the freebsd-acpi mailing list