Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 23 Apr 2008 12:46:37 -0700
From:      Nate Lawson <nate@root.org>
To:        Andriy Gapon <avg@icyb.net.ua>
Cc:        freebsd-acpi@freebsd.org
Subject:   Re: initial value of tz_active
Message-ID:  <480F921D.3050505@root.org>
In-Reply-To: <480F8E2E.8000502@icyb.net.ua>
References:  <480F8E2E.8000502@icyb.net.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
Andriy Gapon wrote:
> It seems that tz_active (in acpi_thermal) is initialized to NONE/-1.
> I don't have a patch, but I have an idea - acpi_thermal should query
> current power state of fans and set tz_active based on that.
> For example, some systems start up with all fans turned on (at full
> speed) for safety reasons, acpi_thermal sees that temperature is low
> enough, it thinks/assumes that no fan is active, so it doesn't change AC
> level, so in reality AC0 is always in effect.

Good point.  I think there should be a "first_time" static that is set 
on boot.  Once acpi_thermal decides to turn some fans on or off, 
first_time is set.  Until it has been set, all fan control is actually 
performed, regardless of tz_active.  After it is set, we can depend on 
tz_active as before.

The reason we can't just read the fan status and initialize tz_active 
accordingly is that some ASL doesn't return the real value of the fans. 
  It just returns a hard-coded value.  On many systems, it does return 
the real value but if even one system is wrong, we can't trust any of them.

-- 
Nate



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?480F921D.3050505>