menu.jpg  ::  Home ::  Computing ::  Downloads ::  Scooter ::  Links ::  Music ::  Nonsense ::  Mail :: 

PC: Overview of the Linux related features of the Acer Ferrari 4005WMLi

Table of contents

1. Preface

This is a quick survey about Linux related hardware features of the Acer Ferrari 4005WMLi. I don't try to explain the usual installation details (for instance, which partitions I have made, what they are good for and so on and so on...). Requests for additional information may be directed by eMail to the author.

The laptop comes with an 15,4" WSXGA+ TFT LCD, which allows resolutions from "1680x1050" or "1280x800" pixels.

A nice goodie is the facility to boot the notebook over Bluetooth and LAN (not needed here yet, but a nice to have feature).

The machine comes with ACPI 1.0b. Standby- or suspend-mode is established by software (stock Linux acpi utilities) or pressing the appropriate hardware button. The laptop, however, won't wake up again. I think, the framebuffer driver bites the wakeup (see: Documentation/power/video.txt). The only ACPI functions used here are LID and Poweroff, which work reasonable well.

The machine runs with the builtin battery up to 3,5 hours.

Be sure that you have installed the latest BIOS (3A23, available on Acer's FTP server), which eliminates a lot of ACPI bugs of older BIOS versions.

2. Installation

My Acer Ferrari 4005WMLi runs these days on Gentoo Linux 2008.0, because this Linux flavor avoids auto-configuration and some other here not wanted mumbo jumbo. It's running on a plain-vanilla Torvalds kernel 2.6.30.

It performs also well with OpenSolaris 2008.5 and 2008.11.

3. General Hardware Data

This notebook is as solid as it's black carbon case -- no fancy stuff, only boring, functional hardware.

3.1 CPU

The system comes with an AMD Mobile Turion64 2000+ processor.

Output from "cat /proc/cpuinfo":

   processor       : 0
   vendor_id       : AuthenticAMD
   cpu family      : 15
   model           : 36
   model name      : AMD Turion(tm) 64 Mobile Technology ML-37
   stepping        : 2
   cpu MHz         : 1989.918
   cache size      : 1024 KB
   fdiv_bug        : no
   hlt_bug         : no
   f00f_bug        : no
   coma_bug        : no
   fpu             : yes
   fpu_exception   : yes
   cpuid level     : 1
   wp              : yes
   flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt lm 3dnowext 3dnow pni lahf_lm ts fid vid ttp tm stc
   bogomips        : 3983.68
   clflush size    : 64

The processor works without additional daemons nicely with the CPU-frequency governors of Linux >2.6.16.

Most times I use the ondemand or the conservative governor.

3.2 RAM

I bought the machine with 1024 MByte (2 x512 MByte) DDR RAM (64 Bit) in the two available slots.

3.3 Hard disk

Seagate 100GB ST9100828A

Output from "lshw --class disk":

  *-disk
       description: ATA Disk
       product: ST9100828A
       vendor: Seagate
       physical id: 0
       bus info: scsi@0:0.0.0
       logical name: /dev/sda
       version: 3.AL
       serial: 5LZ46LMK
       size: 93GiB (100GB)
       capabilities: partitioned partitioned:dos
       configuration: ansiversion=5 signature=27ee27ed

Output from "fdisk -l /dev/sda:"

   Disk /dev/sda: 100.0 GB, 100030242816 bytes
   255 heads, 63 sectors/track, 12161 cylinders
   Units = cylinders of 16065 * 512 = 8225280 bytes

      Device Boot      Start         End      Blocks   Id  System
   /dev/sda1               1         602     4835533+  83  Linux
   /dev/sda2             603         732     1044225   82  Linux swap / Solaris
   /dev/sda3             733        7420    53721360    5  Extended
   /dev/sda4            7421       12161    38082082+  83  Linux
   /dev/sda5             733        1948     9767488+  83  Linux
   /dev/sda6            1949        4380    19535008+  83  Linux
   /dev/sda7            4381        4988     4883728+  83  Linux
   /dev/sda8            4989        7420    19535008+  83  Linux

3.4 DVD-RAM

Output from "lshw --class disk":

   *-cdrom
        description: DVD-RAM writer
        product: DVD-RAM UJ-845S
        vendor: MATSHITA
        physical id: 1
        bus info: scsi@1:0.0.0
        logical name: /dev/cdrom
        logical name: /dev/dvd
        logical name: /dev/scd0
        logical name: /dev/sr0
        version: D200
        capabilities: removable audio cd-r cd-rw dvd dvd-r dvd-ram
        configuration: ansiversion=5 status=open

Both IDE devices are connected to an ATI-IXP dual channel PCI IDE controller, which works quite well with the new PATA (libata) drivers in later kernels.

3.5 FlashMedia Reader

The Texas Instruments FlashMedia controller runs with driver "tifm_sd.ko" without problems in later kernels.

Output from "lshw --class storage":

   *-storage
        description: Mass storage controller
        product: PCIxx21 Integrated FlashMedia Controller
        vendor: Texas Instruments
        physical id: 9.3
        bus info: pci@0000:06:09.3
        version: 00
        width: 32 bits
        clock: 33MHz
        capabilities: storage pm bus_master cap_list
        configuration: driver=tifm_7xx1 latency=64 maxlatency=4 mingnt=7 module=tifm_7xx1  *-storage
        description: Mass storage controller
        product: PCIxx21 Integrated FlashMedia Controller
        vendor: Texas Instruments
        physical id: 9.3
        bus info: pci@0000:06:09.3
        version: 00
        width: 32 bits
        clock: 33MHz
        capabilities: storage pm bus_master cap_list
        configuration: driver=tifm_7xx1 latency=64 maxlatency=4 mingnt=7 module=tifm_7xx1

3.6 Graphic chip

The system comes with an ATI Radeon Mobility X700 PCIE with 128 MB RAM.

Output from "lshw --class video":

   *-display
        description: VGA compatible controller
        product: Radeon Mobility X700 (PCIE)
        vendor: ATI Technologies Inc
        physical id: 0
        bus info: pci@0000:01:00.0
        version: 00
        width: 32 bits
        clock: 33MHz
        capabilities: pm pciexpress msi vga bus_master cap_list
        configuration: latency=0

This chip displays "1680x1050" or "1280x800" pixels with the X-server "ati" from Xorg-x11 7.2. Some hints form my xorg.conf:

   Section "Monitor"
         Identifier   "Generic Monitor"
         VendorName   "Acer"
         ModelName    "Liquid Crystal Display"
         Gamma        0.90 0.90 0.90
         Option       "dpms"
   EndSection

   Section "Device"
         Identifier  "Generic Videocard"
         VendorName  "ATI"
         BoardName   "ATI Mobility Radeon X700"
         Driver      "radeon"
         BusID       "PCI:1:0:0"
         VideoRam    131072
         Option      "BusType" "PCIE"
         Option      "AGPMode" "8"
         Option      "AGPFastWrite" "true"
         Option      "DDCMode" "true"
         Option      "EnablePageFlip" "true"
         Option      "AccelMethod" "EXA"
         Option      "AccelDFS" "true"
   EndSection

The radeon driver handles DRM/DRI and X video extensions out of the box.

The radeonfb driver doesn't support the X700 chipset yet. The chip performs well with the kernel's vesafb driver on console and displays a resolution from "1024x768" - or 128 columns and 48 lines - with 16 bit color on text consoles. It's no problem to switch from the framebuffer console to the Radeon X server and back. To enable the framebuffer mode for console, you need some options in your kernel configuration:

   CONFIG_FB=y
   CONFIG_FB_CFB_FILLRECT=y
   CONFIG_FB_CFB_COPYAREA=y
   CONFIG_FB_CFB_IMAGEBLIT=y
   CONFIG_FB_DEFERRED_IO=y
   CONFIG_FB_MODE_HELPERS=y
   CONFIG_FB_VESA=y

To make it all come true, the kernel needs to be booted with the append switch "video=vesafb:1024x768@60".

3.7 PCMCIA

CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller

To get this device working, you'll need the modules pcmcia_core and yenta_socket.

3.8 Sound

Multimedia audio controller: ATI Technologies Inc IXP SB400 AC'97 Audio Controller (rev 02)

The sound comes quite clear, but with all common disadvantages of sound on laptops (very weak basses and so on ...).

The module snd_ needs the following lines in /etc/modprobe.conf:

   alias char-major-116 snd
   alias char-major-14 soundcore

   alias snd-card-0 snd-atiixp
   alias sound-slot-0 snd-card-0

   alias sound-service-0-0 snd-mixer-oss
   alias sound-service-0-1 snd-seq-oss
   alias sound-service-0-3 snd-pcm-oss
   alias sound-service-0-8 snd-seq-oss
   alias sound-service-0-12 snd-pcm-oss

   alias /dev/mixer snd-mixer-oss
   alias /dev/dsp snd-pcm-oss
   alias /dev/midi snd-seq-oss

   options snd cards_limit=1

3.9 Firewire

FireWire (IEEE 1394): Texas Instruments OHCI Compliant IEEE 1394 Host Controller

The device seems to run with the module ohci1394.ko, but I haven't tested it yet -- no firewire devices all around.

3.10 Touchpad

The notebook's got a Synaptics touchpad with 3 buttons. The whole stuff is recognized as a PS/2 mouse and works in X and on console with gpm started like this:

   # /usr/sbin/gpm -m /dev/input/mice -t imps2 -Rraw

The X mouse listens to /dev/gpmdata. Here are some lines from my xorg.conf:

   Section "InputDevice"
         Identifier  "Touchpad"
         Driver      "mouse"
         Option      "Protocol" "ImPS/2"
         Option      "Device" "/dev/gpmdata"
         Option      "Emulate3Buttons" "false"
         Option      "Buttons" "7"
         Option      "ZAxisMapping" "4 5 6 7"
   EndSection

The touchpad listens on the same PS/2 port as the buttons, so it doesn't need additional configuration.

3.11 Keyboard

The keyboard comes quite unspectacular as a generic model with 104 keys. Some of the Fn keys and some of the custom keys don't work out of the box, but hey ...

3.12 Infrared port - IrDA(TM)

There are no units with infrared ports all around here, so I haven't tested it yet. On the other hand there are no error messages on loading the modules or attaching the device to the IrDA services in the syslog, so that everything seems to work.

3.13 USB

ATI Technologies Inc IXP SB400 USB2 Host Controller

The USB controller needs the kernel modules usbcore, uhci, ehci, kernel's storage subsystem usb-storage and SCSI hard disk support and supports USB 2.0.

The output of /proc/bus/usb/devices:

   Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 4
   B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0
   D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
   P:  Vendor=0000 ProdID=0000 Rev= 2.06
   S:  Manufacturer=Linux 2.6.23 ohci_hcd
   S:  Product=OHCI Host Controller
   S:  SerialNumber=0000:00:13.1
   C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA
   I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
   E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=255ms

   T:  Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 4
   B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0
   D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
   P:  Vendor=0000 ProdID=0000 Rev= 2.06
   S:  Manufacturer=Linux 2.6.23 ohci_hcd
   S:  Product=OHCI Host Controller
   S:  SerialNumber=0000:00:13.0
   C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA
   I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
   E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=255ms

   T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 8
   B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0
   D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
   P:  Vendor=0000 ProdID=0000 Rev= 2.06
   S:  Manufacturer=Linux 2.6.23 ehci_hcd
   S:  Product=EHCI Host Controller
   S:  SerialNumber=0000:00:13.2
   C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA
   I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
   E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms

3.14 Ethernet chip

Ethernet controller: Broadcom Corporation NetLink BCM5789 Gigabit Ethernet PCI Express (rev 11)

The on board chip uses the kernel module tg3 and works like a charm.

3.15 WLAN chip

Network controller: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02)

The WLAN runs the kernel module bcm43xx, which depends on

as modules/options.

The card needs Broadcom firmware, which isn't free and thus doesn't come with the kernel sources. You'll need to extract the firmware with the help of a tool named bcm43xx-fwcutter out of a windoze driver, which is quite easy. Just see the README in the package.

3.16 Modem

Modem: ATI Technologies Inc ATI SB400 - AC'97 Modem Controller (rev 02)

There's an on-Board modem, which uses the kernel module snd_atiixp-modem. I haven't tested it yet, but everything seems to be recognized without errors in the logs.

4. Survey PCI Devices

Output from "lspci":

   00:00.0 Host bridge: ATI Technologies Inc ATI Radeon Xpress 200 (RS480/RS482/RX480/RX482) Chipset - Host bridge (rev 01)
   00:02.0 PCI bridge: ATI Technologies Inc RS480 PCI-X Root Port
   00:06.0 PCI bridge: ATI Technologies Inc RS480 PCI Bridge
   00:13.0 USB Controller: ATI Technologies Inc IXP SB400 USB Host Controller
   00:13.1 USB Controller: ATI Technologies Inc IXP SB400 USB Host Controller
   00:13.2 USB Controller: ATI Technologies Inc IXP SB400 USB2 Host Controller
   00:14.0 SMBus: ATI Technologies Inc IXP SB400 SMBus Controller (rev 11)
   00:14.1 IDE interface: ATI Technologies Inc Standard Dual Channel PCI IDE Controller ATI
   00:14.3 ISA bridge: ATI Technologies Inc IXP SB400 PCI-ISA Bridge
   00:14.4 PCI bridge: ATI Technologies Inc IXP SB400 PCI-PCI Bridge
   00:14.5 Multimedia audio controller: ATI Technologies Inc IXP SB400 AC'97 Audio Controller (rev 02)
   00:14.6 Modem: ATI Technologies Inc ATI SB400 - AC'97 Modem Controller (rev 02)
   00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
   00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
   00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller
   00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control
   01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility X700 (PCIE)
   05:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5789 Gigabit Ethernet PCI Express (rev 11)
   06:02.0 Network controller: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02)
   06:09.0 CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller
   06:09.2 FireWire (IEEE 1394): Texas Instruments OHCI Compliant IEEE 1394 Host Controller
   06:09.3 Mass storage controller: Texas Instruments PCIxx21 Integrated FlashMedia Controller

5. Survey PnP Devices

The Pnp devices are handled by ACPI.

Output from dmesg

   pnp: PnP ACPI init
   ACPI: bus type pnp registered
   pnp: PnP ACPI: found 12 devices
   ACPI: ACPI bus type pnp unregistered
   pnp: 00:07: ioport range 0x1080-0x1080 has been reserved
   pnp: 00:07: ioport range 0x87f-0x87f has been reserved
   pnp: 00:07: iomem range 0xe0000000-0xe00000ff could not be reserved
   pnp: 00:07: iomem range 0xe0010000-0xe0010fff could not be reserved
   pnp: 00:07: iomem range 0xe0030000-0xe0030fff could not be reserved
   pnp: 00:07: iomem range 0xe0098000-0xe009afff could not be reserved
   pnp: 00:08: iomem range 0xe0000-0xfffff could not be reserved
   pnp: 00:08: iomem range 0xfff80000-0xffffffff has been reserved
   pnp: 00:08: iomem range 0x0-0xfff could not be reserved

6. Conclusion

All hardware works well with a recent Linux kernel and my favorite distribution. There are no show-stoppers all around.

7. Disclaimer

This document has nothing to do with Acer, they don't even know it exists. There is no guarantee that the information on this page is accurate, please don't hold me responsible if your experience is different from the information here. If you have found any glaring typos or outdated info in this page, please send an eMail to the author.

8. Credits


The basic of this report was generated by lanoche v0.6, which is available at TuxMobile - Software.


Valid XHTML 1.0

Zurück zur Main-Site
Impressum
Created with Gnu-Emacs on Sun Nov 4 10:42:17 CET 2007

Valid CSS