Sharing my Acer Aspire 5050 experience

Lion G. liontanker at hotmail.com
Mon Jan 1 12:21:23 PST 2007


Hi all! Just thought I'd post what I did to make Acer Aspire 5050 laptop
work on my FreeBSD 6.2-RC2

There is still one major issue: shutdown -p and shutdown -r
doesn't work! It simply hangs after umounting all the drives,
and I had to then manually press down the power button.
If anyone has a solution to the poweroff/reset problem,
I'd really appreciate it.

Anyway, below I post what I did to get sound card working,
and get battery status working. Hope they may be of use to others.

1. HDA Sound
=========

Remove all sound driver from the kernel

Downloaded sndkld_releng6_i386 from
http://people.freebsd.org/~ariff/HDA/kmod/

Uncompress into /boot/kernel

Then load "snd_hda" at boot up

2. Battery status indicator
================

Downloaded Intel's 2006Nov ACPI CA compiler
from http://www.intel.com/technology/iapc/acpi/license2.htm

Go in its "compiler" directory

Type "gmake" to compile the latest ACPI CA compiler.

Grab the current ACPI for the laptop by typing
acpidump -t -d > acer.asl
Then make 4 modifications to it:

First modify the definitionblock like this:

Old:

DefinitionBlock ("DSDT.aml", "DSDT", 1, "ATI", "SB460", 100925440)
{
    Name (Z000, 0x01)
    Name (Z001, 0x02)
    Name (Z002, 0x04)
    Name (Z003, 0x08)
    Name (Z004, 0x00)
    Name (Z005, 0x0F)
    Name (Z006, 0x0D)
    Name (Z007, 0x0B)
    Name (Z008, 0x09)
    Scope (\_PR)
    {
        Processor (CPU0, 0x00, 0x00008010, 0x06) {}
        Processor (CPU1, 0x01, 0x00000000, 0x00) {}
    }

New:

DefinitionBlock ("DSDT.aml", "DSDT", 1, "ATI", "SB460", 100925440)
{
    External (Z00K)
    Name (Z000, 0x01)
    Name (Z001, 0x02)
    Name (Z002, 0x04)
    Name (Z003, 0x08)
    Name (Z004, 0x00)
    Name (Z005, 0x0F)
    Name (Z006, 0x0D)
    Name (Z007, 0x0B)
    Name (Z008, 0x09)
    Scope (\_PR)
    {
        Processor (CPU0, 0x00, 0x00008010, 0x06) {}
        Processor (CPU1, 0x01, 0x00000000, 0x00)
        {
        External (_PPC)
        }
    }

Secondly, modify line 162 like this:

Old:
OperationRegion (PLPT, SystemIO, 0x0378, 0x01)

New:
OperationRegion (PLPT, SystemIO, 0x0378, 0x04)

Thirdly, modify lines 4396..4402 like this:

Old:

Name (PBST, Package (0x04)
{
   0x00,
   Z00E,
   Z00E,
   0x2710
})

New:

Name (PBST, Package (0x04)
{
   0x00,
   Z001,
   Z001,
   0x2710
})

Fourthly, replace all occurrence of "_T_0" with "TTT0".

Now, generate the updated ACPI file by typing
"./iasl acer.asl"

It should give 0 errors and 4 warnings,
and generate a new file called "DSDT.aml"

Just copy DSDT.aml to "/boot",
then add the following 3 lines to /boot/loader.conf

hw.acpi.osname="Windows 2001"
acpi_dsdt_load="YES"
acpi_dsdt_name="/boot/DSDT.aml"

(After rebooting, the dozen or so "ACPI" errors messages
should no longer show up on the boot screen.
And "acpiconf -i batt" should tell you the battery status now.)

_________________________________________________________________
The MSN Entertainment Guide to Golden Globes is here.  Get all the scoop. 
http://tv.msn.com/tv/globes2007/



More information about the freebsd-mobile mailing list