Date: Sun, 13 Mar 2005 15:33:26 -0500 From: Jesse Guardiani <jesse@wingnet.net> To: freebsd-mobile@freebsd.org Subject: Re: Thinkpad Thermals Message-ID: <d12899$jub$1@sea.gmane.org> References: <d0am07$78l$1@sea.gmane.org> <20050304223630.1CCD15D07@ptavv.es.net> <d0i07u$b7e$1@sea.gmane.org> <d0i8q7$948$1@sea.gmane.org> <1110335408.881.24.camel@RabbitsDen>
next in thread | previous in thread | raw e-mail | index | archive | help
Alexandre "Sunny" Kovalenko wrote: > On Mon, 2005-03-07 at 02:18 -0500, Jesse Guardiani wrote: >> Jesse Guardiani wrote: >> >> > Kevin Oberman wrote: >> >> [...] >> >> >>> Is 66C acceptable temp for a laptop? It's definitely a better temp, >> >>> but It would really stink if my 1.2ghz had to be run at just 800mhz >> >>> all the time to avoid cooking things. >> >> >> >> Once again, I can't define "acceptable". It is not so hot as to be >> >> frightening, but it does sound like it's running warmer than I would >> >> expect. Dust? Blocked air intake/outlet? >> > >> > Absolutely not. I just replaced the motherboard myself. It took 2 >> > hours. I was very careful to examine the heatsink for blockage or >> > excessive dust. It's clean, and the fan spins freely. >> > >> > >> >> Those can real impact thermals. And, of course, fan problems can be >> >> a big issue. >> > >> > I'm starting to think that my fan should be running, but isn't. The >> > whole purpose of this post is to see if I can figure out what went >> > wrong last year when my GPU cooked. If the fan should be running, but >> > isn't, then that certainly gives me a place to start. >> >> OK, I can't find any fan speed settings in the BIOS. I have LCD settings, >> CPU settings, and performance profiles, but nothing for fan speed. I >> think the fan is running, as I can hear a faint humming from the vent >> port, even when the HDD is sleeping. I can't feel any air on my hand >> though. >> >> Where should I start looking to tweak this thing via ACPI? >> > > First, you might want to see if your ASL defines any thermal levels and > what the values are. Since I am unfamiliar with Linux way of doing these > things (and this is FreeBSD mailing list ;), I would use FreeBSD way and > you will have to do the mapping. > > On my laptop (with hacked ASL) output of > > sysctl hw.acpi.thermal > > is as follows > > hw.acpi.thermal.min_runtime: 10 > hw.acpi.thermal.polling_rate: 10 > hw.acpi.thermal.tz0.temperature: 48.0C > hw.acpi.thermal.tz0.active: -1 > hw.acpi.thermal.tz0.thermal_flags: 0 > hw.acpi.thermal.tz0._PSV: 90.0C > hw.acpi.thermal.tz0._HOT: -1 > hw.acpi.thermal.tz0._CRT: 110.0C > hw.acpi.thermal.tz0._ACx: 75.0C 70.0C 55.0C -1 -1 -1 -1 -1 -1 -1 > > Important to your research is '_ACx' line above. It states temperatures > that would trigger change in the cooling levels. In my case, they simply > change speed of both fans simultaneously. I have only one fan. I've learned today that my laptop is indeed in "passive" mode 99% of the time. This is great when it's on battery, but I'd really prefer the fan to be 'active' when I'm on A/C so I can run my CPU at full speed. Here's the linux equivalent of the above sysctl's: # cat /proc/acpi/thermal_zone/THM0/cooling_mode <setting not supported> cooling mode: passive # cat /proc/acpi/thermal_zone/THM0/trip_points critical (S5): 97 C passive: 92 C: tc1=5 tc2=4 tsp=600 devices=0xd7f6e580 Notice that 'active' isn't mentioned! Using the advice at the bottom of the acpi.sf.net page, found here: http://acpi.sourceforge.net/documentation/thermal.html I did this: # sh -c 'echo -n "90:0:40:40:0" > /proc/acpi/thermal_zone/THM0/trip_points' # cat /proc/acpi/thermal_zone/THM0/trip_points critical (S5): 90 C passive: 40 C: tc1=5 tc2=4 tsp=600 devices=0xd7f6e580 This makes absolutely no difference though. The fan still doesn't come on until it hits 80C, and it's all passive. > If such line has some sensible values in it and you would like to change > them one way or another, you will have to extract your ASL (see ACPI > section of the handbook), find something that looks like > > Method(_AC0) { Return (KELV(0x4B)) } I don't have anything like that. cat /proc/acpi/dsdt > dsdt.aml ./iasl -d dsdt.aml # grep -i _AC dsdt.dsl Exit 1 Oh well, thanks for the suggestions. I'm going to try posting on the linux acpi list and maybe read up on the dsdt spec. The A30p dsdt compiles with a few errors and warnings too, so it couldn't hurt to fix those while I'm at it. Thanks! -- Jesse Guardiani, Systems Administrator WingNET Internet Services, P.O. Box 2605 // Cleveland, TN 37320-2605 423-559-LINK (v) 423-559-5145 (f) http://www.wingnet.net
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?d12899$jub$1>