acer 5553g/amd danube: switch off hd5000, get cooler laptop

After finding sysutils/acpi_call (thanks gelraen!), I finally have a way to switch of the hd5000 in my acer5553g. And I guess this should work for other amd danube based machines (mobile phenom, hybrid ati/ati cards), too.

With this, I get dri (the integrated hd4200 is supported, the hd5000 not) and a somewhat cooler, quieter and longer running machine. It's still not cool and quiet, C1E doesn't seem to kick in, no matter what I try :(

Boot the machine with the bios set to "Graphics: switchable"

then, as root:

Code:
# cd /usr/ports/sysutils/acpi_call
# make install clean
...
# kldload acpi_call
# acpi_call -p "\\_SB.PCI0.AGP.VGA.PX02" -v
Path: \_SB.PCI0.AGP.VGA.PX02
Number of arguments: 0
Status: 0
Result: 0

and voila, the hd5000 is powered down and your fan will slow down.

Result

Bios setting / active card / Battery drain / cpu temp idle with running gnome:

Code:
"Graphics: discrete"  and HD5000 (no dri): 2635 mA (30929 mW) and 56°C 
"Graphics: switchable" and HD4200 (dri, HD5000 still on): 3672 mA (42470 mW), 63°C 
"Graphics: switchable" and HD4200 (dri, HD5000 off): 2251 mA (26014 mW) and 53°C
 
mathiasp said:
It's still not cool and quiet, C1E doesn't seem to kick in, no matter what I try :(

What FreeBSD version do you have? FreeBSD before 9.x blocked C1E to keep LAPIC timer working. 9.0 should do it only when LAPIC timer is chosen (at least once since boot). If it is not done automatically, it should be possible to force HPET timer manually via kern.eventtimer.timer loader tunable.
 
I'm using FreeBSD 9, and there is no HPET (found?) on the 5553g. Is there another alternative to LAPIC? And if I remember correctly, setting kern.eventtimer.timer to i8254 made the system run 2 degrees hotter. Bu that's from memory, I will retry tomorrow.

Thanks for the LAPIC hint, I had already forgotten about it, and now, with the hd5000 out of the way I would love to get the sytem cooler.
 
i8254 also can work in one-shot mode if you have other timecounter to free it with hint.attimer.0.timecounter=0. It is less effective then HPET as it can't generate less than 18 interrupts per second, but still...
 
Back
Top