Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 16 Dec 2004 15:37:26 -0500
From:      "Alexandre \"Sunny\" Kovalenko" <Alex.Kovalenko@verizon.net>
To:        Alex Zatelepin <mvzp10@cln.ru>
Cc:        freebsd-mobile@freebsd.org
Subject:   Re: Laptop fan problem.
Message-ID:  <1103229446.972.26.camel@RabbitsDen>
In-Reply-To: <web-5067190@ihome.ru>
References:  <20041216115146.4683343D55@mx1.FreeBSD.org> <1103201718.995.22.camel@RabbitsDen>  <web-5067190@ihome.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 2004-12-16 at 20:07 +0300, Alex Zatelepin wrote:
> On Thu, 16 Dec 2004 07:55:18 -0500
>   "Alexandre \"Sunny\" Kovalenko" <Alex.Kovalenko@verizon.net> wrote:
> > On Thu, 2004-12-16 at 11:51 +0000, Alex Zatelepin wrote:
> >> X-Mailer: CommuniGate Pro WebUser Interface v.4.2.7
> >> Date: Thu, 16 Dec 2004 14:51:40 +0300
> >> Message-ID: <web-5061383@ihome.ru>
> >> MIME-Version: 1.0
> >> Content-Type: text/plain; charset="windows-1251"; format="flowed"
> >> Content-Transfer-Encoding: 8bit
> >> 
> >> Hello. I have a toshiba M30 laptop, on which I have installed 
> >>freebsd 
> >> 5.3. I have enabled speedstep support with est and estctrl ports and 
> >> it seems to work except a little problem: the fan almost never turns 
> >> on and laptop turns really HOT! I have tried to change some sysctls 
> >> but they seem to be non-writable. here they are:
> >> 
> >> % sysctl -a|grep thermal
> >> hw.acpi.thermal.min_runtime: 0
> >> hw.acpi.thermal.polling_rate: 10
> >> hw.acpi.thermal.tz0.temperature: 3512
> >> hw.acpi.thermal.tz0.active: -1
> >> hw.acpi.thermal.tz0.thermal_flags: 0
> >> hw.acpi.thermal.tz0._PSV: 3912
> >> hw.acpi.thermal.tz0._HOT: -1
> >> hw.acpi.thermal.tz0._CRT: 3922
> >> hw.acpi.thermal.tz0._ACx: 3912 3912 -1 -1 -1 -1 -1 -1 -1 -1
> >> 
> >> 391,2 K -- I think it is rather high :) How to change this or make 
> >>the 
> >> fan turn on more frequently?
> >> _______________________________________________
> >> freebsd-mobile@freebsd.org mailing list
> >> http://lists.freebsd.org/mailman/listinfo/freebsd-mobile
> >> To unsubscribe, send any mail to 
> >>"freebsd-mobile-unsubscribe@freebsd.org"
> > 
> > In the simplest case, you need to look for something like 
> > 
> > 	Method(_AC0) { Return "some temperature" }
> > 	Method(_AC1) { Return "some temperature" }
> > 
> > in your ASL and change it to something lower. You will have to 
> >recompile
> > you ASL and load it at the boot time after that. ACPI section of the
> > Handbook is very helpful.
> > 
> > You have not mentioned what FreeBSD version you are running -- by 
> >the
> > look of the output, I would guess 5.1 or 5.2. If this is the case, 
> >you
> > might want to consider upgrade to 5.3--stable, ACPI have seen
> > considerable amount of change.
> > -- 
> > Alexandre "Sunny" Kovalenko (Олександр Коваленко)
> > 
> 
>   Read carefully, I said I have 5.3 installed :) But, if I have to 
> recompile ASL why does it work properly on windows? I have attached 
> output from 'acpidump -t -d', it is very obscure for me.
> The lines you wrote about:
> 
> Method (_AC0, 0, NotSerialized)
>                  Return (\_SB.MEM.AC01)
> Method (_AC1, 0, NotSerialized)
>                  Return (\_SB.MEM.AC11)
> 
> Is it safe to change them? Again, is there another way?
> _______________________________________________
> freebsd-mobile@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-mobile
> To unsubscribe, send any mail to "freebsd-mobile-unsubscribe@freebsd.org"
Ahem... I was pretty sure that temperature display went to Celsius
sometime circa 5.2.1. At least my mid-November 5.3 displays them that
way (as opposed to tenths of the Kalvin) and so does 6.0. Unless it is
tunable or locality related, it does look somewhat odd.

As far as why does it work properly on Windows -- without digging much
deeper, possibilities are endless:
-- Windows uses APM
-- Windows software sets _AC levels (you might want to poke around your
ASL looking for Store("something or other", \_SB.MEM.AC01).

Unfortunately I am no great expert on ACPI thermal handling -- I have
crafted myself set of thermal objects from couple of lucky guesses but
that is about it.

As far as it being safe... I have found out that my laptop has emergency
overheat shutdown circuitry while playing with my ASL ;) A word of
advice -- if you decide to be brave -- take out battery and keep power
cord close by, so you can unplug it in a hurry. Winter would be good
time for these experiments too ;) On more serious note, I have been
running with my own thermal objects for over a year now and very pleased
with laptop's behavior in that respect.

As far as other way... your ASL seems to be reading ACx values from
somewhere in the memory -- you might be able to populate them there.
>From standpoint of overheating it is not much different from hardcoding
them in the methods though.

I would recommend reading through ACPI spec, at least first few chapters
and (fairly short) chapter on thermal control.
-- 
Alexandre "Sunny" Kovalenko (Олександр Коваленко)



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