TECRA A9-S9017 -- Idles too hot -- Hardware Support

Ian Smith smithi at nimnet.asn.au
Tue Aug 26 10:27:38 UTC 2008


On Mon, 25 Aug 2008, freebsd_user at guice.ath.cx wrote:
 > On Tue, Aug 26, 2008 at 01:30:22AM +1000, Ian Smith wrote:
[..]
 > > On Sun, 24 Aug 2008, freebsd_user at guice.ath.cx wrote:
 > >  > Continuing this thread.  See below for annotations
 > >  > 
 > >  > On Sun, Aug 10, 2008 at 09:28:19PM -0500, Wes Morgan wrote:
 > >  > > On Sun, 10 Aug 2008, freebsd_user at guice.ath.cx wrote:
 > >  > > 
 > >  > > >	I've been through his before with an AMD setup (desktop) and now, 
 > >  > > >here we go again using a Toshiba TECRA A9-S9017 laptop. The issue here is, 
 > >  > > >is
 > >  > > >appears that FreeBSD is causing the motherboard and its chipset(s)
 > >  > > >and/or CPU's to work wide open (full throttle) --disregard for APM. I'm
 > > 
 > > APM?  I guess you mean ACPI on a modern laptop?  See below ..

 > At this point I was speaking of APM.  While the machine is booting 
 > there was a time it printed something to the effect that 'APM' 
 > could/would not be loaded/enabled because of a missing device/optin 
 > in the kernerl.

Ok .. considering APM as n/a from here on.

 > >  > > >basing this on the amount of heat coming from this current laptop while
 > >  > > >the laptop is idling, The heat is to the point that you can't keep the
 > >  > > >laptop on your lap; in addition to the battery not lasting quite an hour 
 > >  > > >while idling.
 > >  > > 
 > >  > > Try using powerd(8).
 > >  > > 
 > >  > 
 > >  > I have done so with little improvement as far as the heat goes.  When we 
 > >  > first requested help (this thread), the role of this machine was to be a 
 > >  > freebsd desktop.  Since then we lost a mail server and have been forced to 
[..]

 > Back to the here and now.  :=)

Yes, and cutting to the chase ..

 > > However we need some empirical data about what it's doing.  Showing your 
 > > /var/run/dmesg.boot and 'sysctl hw.acpi' output would be a good start.
 > > 
 > Initially we didn't provide that data until someone asked for it to be sure that is 
 > in fact what was needed or if the was some other incorrect setting.
 > 
 > /var/run/dmesg.boot ...

I'm trimming this down to the likely relevant ACPI stuff ..

 > Copyright (c) 1992-2008 The FreeBSD Project.
 > Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
 > 	The Regents of the University of California. All rights reserved.
 > FreeBSD is a registered trademark of The FreeBSD Foundation.
 > FreeBSD 6.3-RELEASE-p3 #1: Mon Aug  4 23:37:02 EDT 2008
 >     root at WORKSTATION.ath.cx:/usr/obj/usr/src/sys/WORKSTATION
 > ACPI APIC Table: <TOSHIB A0056   >
 > Timecounter "i8254" frequency 1193182 Hz quality 0
 > CPU: Intel(R) Core(TM)2 Duo CPU     T7500  @ 2.20GHz (2194.52-MHz 686-class CPU)
 >   Origin = "GenuineIntel"  Id = 0x6fb  Stepping = 11
 >   Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
 >   Features2=0xe3bd<SSE3,RSVD2,MON,DS_CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM>
 >   AMD Features=0x20100000<NX,LM>
 >   AMD Features2=0x1<LAHF>
 >   Cores per package: 2
 > real memory  = 2113142784 (2015 MB)
 > avail memory = 2058563584 (1963 MB)
 > ioapic0: Changing APIC ID to 1
 > ioapic0 <Version 2.0> irqs 0-23 on motherboard
[..]
 > acpi0: <TOSHIB A0056> on motherboard
 > acpi0: Power Button (fixed)
 > Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
 > acpi_timer0: <24-bit timer at 3.579545MHz> port 0xd808-0xd80b on acpi0
 > acpi_hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on acpi0
 > Timecounter "HPET" frequency 14318180 Hz quality 900
 > cpu0: <ACPI CPU> on acpi0
[..]
 > acpi_lid0: <Control Method Lid Switch> on acpi0
 > battery0: <ACPI Control Method Battery> on acpi0
 > acpi_button0: <Power Button> on acpi0
 > acpi_acad0: <AC Adapter> on acpi0
 > acpi_tz0: <Thermal Zone> on acpi0
[..]

No cpufreq driver/s.  cpufreq removed from your custom kernel?  So no 
CPU frequency control.  So, powerd is rendered powerless ..

Try booting with the GENERIC kernel, you should see one or two of the 
supported drivers listed in cpufreq(4) loaded in dmesg.boot.  Then see 
if powerd isn't doing the right thing (w/ powerd -v as discussed below)

 > sysctl hw.acpi ...
 > 
 > hw.acpi.supported_sleep_state: S3 S4 S5
 > hw.acpi.power_button_state: S5
 > hw.acpi.sleep_button_state: S3
 > hw.acpi.lid_switch_state: NONE
 > hw.acpi.standby_state: S1
 > hw.acpi.suspend_state: S3
 > hw.acpi.sleep_delay: 1
 > hw.acpi.s4bios: 0
 > hw.acpi.verbose: 0
 > hw.acpi.disable_on_reboot: 0
 > hw.acpi.handle_reboot: 0
 > hw.acpi.reset_video: 0
 > hw.acpi.cpu.cx_lowest: C1
 > hw.acpi.battery.life: 100
 > hw.acpi.battery.time: -1
 > hw.acpi.battery.state: 0
 > hw.acpi.battery.units: 1
 > hw.acpi.battery.info_expire: 5
 > hw.acpi.acline: 1
 > hw.acpi.thermal.min_runtime: 0
 > hw.acpi.thermal.polling_rate: 10
 > hw.acpi.thermal.user_override: 0
 > hw.acpi.thermal.tz0.temperature: 63.0C
 > hw.acpi.thermal.tz0.active: -1
 > hw.acpi.thermal.tz0.passive_cooling: 0
 > hw.acpi.thermal.tz0.thermal_flags: 0
 > hw.acpi.thermal.tz0._PSV: -1
 > hw.acpi.thermal.tz0._HOT: -1
 > hw.acpi.thermal.tz0._CRT: 102.0C
 > hw.acpi.thermal.tz0._ACx: -1 -1 -1 -1 -1 -1 -1 -1 -1 -1

No passive cooling.  See acpi_thermal(4) .. you may want to set some 
overrides .. but it might all just work with the GENERIC kernel anyway.

Also, have you set anything in BIOS regarding power usage, speedstep or 
any other settings that might get reflected into your boot ACPI setup?

And, are you loading acpi_toshiba(4)?  Not sure if it would help with 
this, but may at least provide some useful info in its sysctls ..

 > >  > Soon after we login remotely, the heat ramps up again to the point were 
 > >  > you can't keep the 'subject:' machine on your lap; there are time we do 
 > >  > need to use the machine directly which includes placing the machine on 
 > >  > ones' lap.
 > >  > 
 > >  > With that being said, 'man powerd' states the default is to run in 
 > >  > "adaptive" mode but, the bug section of the same man page states: 
 > >  > 
 > >  > "If powerd is used with power_profile, they may override each other."
 > >  > 
 > >  > -- How do I know, or find out, if the above (override) is taking place?
 > >  > -- How to tell what state/mode 'powerd' is in at any particular timestamp?
 > > 
 > > Secondly, in its own window or vty, as root, run /etc/rc.d/powerd stop 
 > > (if it's running) then run 'powerd -v' which runs in foreground and says 
 > > exactly what it's doing re shifting CPU frequency under various loads.
 > > 
 > > It's also useful to watch the temperature(s) directly over the time, see 
 > > acpi_thermal(4) and try logging those sysctls periodically in a script.
 > > 
 > > Firstly, yes that comment isn't too helpful .. power_profile only acts 
 > > (so far) when you apply or remove AC power, using the following values 
 > > from /etc/defaults/rc.conf unless you've set them otherwise:
 > > 
 > > performance_cx_lowest="HIGH"            # Online CPU idle state
 > > performance_cpu_freq="HIGH"             # Online CPU frequency
 > > economy_cx_lowest="HIGH"                # Offline CPU idle state
 > > economy_cpu_freq="HIGH"                 # Offline CPU frequency
 > > 
 > > If you have a look at /etc/rc.d/power_profile you'll see that these are 
 > > applied to sysctl hw.acpi.cpu.cx_lowest (from hw.acpi.cpu.cx_supported)
 > > and dev.cpu.0.freq (from dev.cpu.0.freq_levels).  You can set the above 
 > > variables to HIGH, LOW, a specific value, or NONE.
 > > 
 > > Specify "NONE" to have power_profile make no changes.  "C3" or at least 
 > > "C2" can be useful CX values, in some machines helping with temperature.  
 > > powerd will soon override the dev.cpu.0.freq setting anyway, so it's not 
 > > a problem - again, watch powerd -v output - and I guess you'll rarely 
 > > run on battery (you've got a nice 2-3 hour UPS, though :)
 > 
 > This is another issue in addition to the heat.  As you say, this battery
 > should last any where from 2-3 hours, however as it is now;
 > out-of-the-box so to speak, this machine will only stay powered up
 > approximately 1-hour on using the oem battery.

That's because it runs at (presumably) its maximum frequency all of the 
time; you're lucky to get an hour at that rate, and yes it'll run hot :)

'sysctl dev.cpu.0.freq hw.acpi.thermal.tz0.temperature' now and again.

 > >  > This machine has never run this hot, prior to running 'powerd'-- or run 
 > >  > this warm, while idling with 'powerd' in comparison to running under windows 
 > >  > --not trying to start and OS confilict here, trying to learn, understand 
 > >  > and control this beast of a machine if possible.
 > > 
 > > Of course, and it's likely doable, though you might need to run 7-STABLE 
 > > for the latest dual-core ACPI handling.  Let's see how we go with some 
 > > real information, before suggesting taking this to freebsd-acpi at .  I 
 > > don't see where you've mentioned what version of FreeBSD it's running?
 > 
 > I believe I did so at the outset of this thread.  In any case dmesg has
 > now provided that information.

ok, 6.3-R-p3.  Frankly I've no idea whether your dual-core Toshiba is or 
is not subject to any of the dual-core issues solved or being actively 
worked on in freebsd-acpi and being applied mostly or at least firstly 
back into 7-STABLE.  I'd suggest browsing the -acpi archives for the 
last few months, it's not that big .. that is, if using the GENERIC 
kernel and running powerd doesn't improve matters sufficiently.

cheers, Ian


More information about the freebsd-mobile mailing list