[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Changing temperature threshold

On 6/23/05, Nate Lawson <nate_(_at_)_root_(_dot_)_org> wrote:
> Alexandre "Sunny" Kovalenko wrote:
> >>When I try to raise hw.acpi.thermal.tz0._CRT to 85C (which is the 
> >>threshold in the BIOS setup) it doesn't work:
> >>
> >>bell# sysctl hw.acpi.thermal.tz0._CRT=3580  # 3580 tenths of Kelvin=85C
> >>sysctl: oid 'hw.acpi.thermal.tz0._CRT' is read only
> >>
> >>Now, my question is: how do I change this value? I've read several
> >>manpages (acpi(4), acpi_thermal(4), acpiconf(8), loader(8), and many
> >>others) and checked the handbook, to no avail. Can anyone point me
> >>to the right direction?
> > 
> > One of the ways to deal with that would be to dump your ASL (see
> > Handbook for guidance), find lines which look like:
> >                         Method (_CRT, 0, NotSerialized)
> >                         {
> >                             Return (KELV (0x5d))
> >                         }
> > modify them to your liking, compile ASL and override it during boot
> > (instructions on how to compile and override are in Handbook as well).
> > Please, note that actual value returned is in the 1/10th of the degree
> > of Kelvin. Function KELV above has following ASL code associated with
> > it:
> >                         Method (KELV, 1, NotSerialized)
> >                         {
> >                             Store (Arg0, Local1)
> >                             Multiply (0x0A, Local1, Local1)
> >                             Add (Local1, 0x0AAC, Local1)
> >                             Return (Local1)
> >                         }
> > Thermal management chapter of the ACPI specification should provide you
> > with ample explanation of what this is all about.

Thanks for the tip, I'll try that if the machine starts acting up again (so far 
it hasn't).

> This explanation is correct.  The reason why the sysctl is read-only is 
> because the values are supplied by the BIOS and are what the OEM thinks 
> are critical temperatures.  However, we need a way to allow override in 
> the case of obviously wrong values like this.  I'll probably change it 
> to allow overriding from the loader but be read-only in sysctl to avoid 
> accidental changes from users experimenting.

I think that's a great idea.

Thank you and have a nice weekend,
freebsd-acpi_(_at_)_freebsd_(_dot_)_org mailing list
To unsubscribe, send any mail to "freebsd-acpi-unsubscribe_(_at_)_freebsd_(_dot_)_org"