Darkly Colored Felines of Fury

Lynx in Summer
  <HOME>   <BIO>   <CV>   <LIFELINES>

Posts

Author
Patrick Aud­ley

Review of the ECS G551 Lap­top with an eye to run­ning Linux smoothly on it.

TuxMobil - Linux on Laptops, PDAs and mobile Phones

Table of Contents


Intro­duc­tion I pur­chased this lap­top because I wanted a lighter Centrino-based lap­top to replace my aging Sony Vaio. I decided to by a white-label lap­top (one that is sold to be rebranded by retail­ers) because it was cheaper, user ser­vice­able and con­tained no pro­pri­etary parts. Hav­ing a lap­top that I can upgrade the cpu with­out any spe­cial tools or costly vists to the ven­dor (or in the case of my Vaio — buy a new lap­top) — is very impor­tant to me. ECS USA is the main dis­trib­u­tor for ECS though you will prob­a­bly have to find them through a local reseller unless you have a whole­sale account with one of the big dis­trib­u­tors. I had no prob­lem find­ing three shops that sold them in Vancouver.

So how well does it work with Linux? The short answer is very well! Read on for some specifics.


Images ECS G551 Front Image
Hard­ware Spec­i­fi­ca­tions and Sta­tus CPU Intel® Banias proces­sor from 1.3GHz to 1.7GHz with Speed­Step tech­nol­ogy, uFCPGA2 pack­age (478pin)
Mine has a 1.7Ghz Banias Work­ing, Enhanced Speed­Step is very nice. Chipset Intel® ODEM + ICH4-M (aka Intel 855PM) Work­ing Mem­ory 1GB DDR (dual simms) Work­ing LCD 15.0″ SXGA+ (1400×1050 res­o­lu­tion) Work­ing, absolutely beau­ti­ful dis­play. Very wide view­ing angle. Video Card ATI Mobil­ity M9P-CSP64, AGP 4X
64MB DDR Video RAM (on VGA chip) Work­ing but the ATI fglrx dri­vers are VERY flaky. Stock Xorg 4.3+ dri­vers are fine. HDD 2.5″ 9.5mm height, ATA 100/66 sup­ported, up to 5400 rpm
I bought a 5400rpm 60GB Fujitsu MHT2060AH Work­ing Opti­cal Drive 5.25″/12.7mm CD-ROM/DVD-ROM/Combo Drive (DVD-ROM+CD-RW), DVD-RW (Multi)
I bought a Slim­type COMBO LSC-24081 DVD+CD/RW Work­ing includ­ing burn­ing at 24x Touch Pad Synap­tics w/ scrolling but­ton (4 ways) Work­ing, to get all the func­tions use the Synap­tics X11 Dri­ver. Key­board 88 keys with 12 func­tion keys and 3 Win­dows keys Work­ing, key­board has a nice tac­tile feel and is easy to clean/replace if needed. I/O Ports 2 x USB2.0 ports, par­al­lel port, VGA port, RJ-11, RJ-45, FIR, 1394a, TV-Out , head phone(SPDIF), Mic_in I have not tested the FIR, 1394a, TV-Out or par­al­lel yet. The USB works fine as v2.0 and the head­phones and micro­phone work as expected. The 1394a is detected by Linux I just do not have any firewire devices. PCMCIA Type II PCMCIA slot, sup­port Card­Bus Work­ing Audio AC97 2.1compliant, , 5.1 chan­nel sup­port, built-in two stereo speak­ers The sound card is an Intel810 inte­grated (or at least that dri­ver works). Sound qual­ity is great but the speak­ers are noth­ing spe­cial. Ok for casual use, audio­phile be warned though. Modem ICH4 soft modem (Agere)
(See the modem sec­tion below) Does not work under Linux. It detects but try though I might, I can­not get dail­tone. If any­one fixes this, let me know, eh? AC Adapter 65Watts, Uni­ver­sal Work­ing Bat­tery Li-Ion bat­tery @ 53 Whrs (8 cells) Work­ing Bat­tery Life More than 4.0 hrs
The most I’ve had is around 3hrs… it’s still very nice. I can play a full DVD and then some which is what I wanted. Work­ing Bat­tery Charge 3 hrs charge time while sys­tem off
4 hrs charge time while sys­tem on Work­ing BIOS AMI Sup­ports PnP, pass­word Work­ing, see the BIOS sec­tion below. LAN Real­tek RTL8139 100baseT NIC Work­ing Wifi Stan­dard MiniPCI slot
I have a Real­tek 8180 802.11b wifi card which works under ndiswrapper(see below) Work­ing with ndis­wrap­per and the win­dows dri­ver, see the Wifi sec­tion below. Power Man­age­ment ACPI 2.0 sup­ported Work­ing, see the ACPI sec­tion below. Size 326×258×32 mm A nice size. Weight 2.6kg Quite a bit lighter than my last lap­top. In gen­eral all the hard­ware works. The only thing to really note is the bat­tery life is not what’s adver­tised — even run­ning under XP. In term of com­pat­i­bil­ity this lap­top is beau­ti­ful. There were no hard­ware workarounds other than the wifi card though I could have bought a dif­fer­ent miniPCI card so that is not really the laptop’s fault.

lspci out­put

0000:00:00.0 Host bridge: Intel Corp. 82855PM Processor to I/O Controller (rev 03)
0000:00:01.0 PCI bridge: Intel Corp. 82855PM Processor to AGP Controller (rev 03)
0000:00:1d.0 USB Controller: Intel Corp. 82801DB (ICH4) USB UHCI #1 (rev 03)
0000:00:1d.1 USB Controller: Intel Corp. 82801DB (ICH4) USB UHCI #2 (rev 03)
0000:00:1d.2 USB Controller: Intel Corp. 82801DB (ICH4) USB UHCI #3 (rev 03)
0000:00:1d.7 USB Controller: Intel Corp. 82801DB (ICH4) USB2 EHCI Controller (rev 03)
0000:00:1e.0 PCI bridge: Intel Corp. 82801BAM/CAM PCI Bridge (rev 83)
0000:00:1f.0 ISA bridge: Intel Corp. 82801DBM LPC Interface Controller (rev 03)
0000:00:1f.1 IDE interface: Intel Corp. 82801DBM (ICH4) Ultra ATA Storage Controller (rev 03)
0000:00:1f.5 Multimedia audio controller: Intel Corp. 82801DB (ICH4) AC'97 Audio Controller (rev 03)
0000:00:1f.6 Modem: Intel Corp. 82801DB (ICH4) AC'97 Modem Controller (rev 03)
0000:01:00.0 VGA compatible controller: ATI Technologies Inc Radeon R250 Lf [Radeon Mobility 9000 M9] (rev 02)
0000:02:02.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8180L 802.11b MAC (rev 20)
0000:02:03.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
0000:02:04.0 CardBus bridge: Ricoh Co Ltd RL5c475 (rev b8)
0000:02:04.1 FireWire (IEEE 1394): Ricoh Co Ltd R5C551 IEEE 1394 Controller


BIOS and ACPI The AMI bios was that shipped with the lap­top worked well but the fan was a lit­tle exces­sive. I’ve since upgraded to the 20040419 AMI BIOS from the Tai­wanese ECS site. I made a boot cd with a Free­DOS boot image and the DOS exe­cutable from the ECS site. Every­thing went well though it took ages to update the BIOS. The only changes that I noticed were LCD auto-dimming on bat­tery and a change in the fan — it used to blow con­stantly at var­i­ous speeds, now it tends to go off com­pletely at low loads but burst occa­sion­ally. I think it’s bet­ter but your mileage might vary so think care­fully before upgrading.

DMI Decode Output

ACPI

The DSDT is fine as shipped though it does have Microsoft OS detec­tion in the AML. I’ve patched it to remove that and sev­eral other errors that Intel’s IASL Com­piler found but I haven’t really noticed a dif­fer­ence. If you’re curi­ous here’s the AML and the two ASL files as well as the diff. If you want to patch your DSDT please check out The Linux ACPI Project before you do.

Here’s the bat­tery information:

inanna:~ cat /proc/acpi/battery/BAT0/info
present: yes
design capacity: 3600 mAh
last full capacity: 3486 mAh
battery technology: rechargeable
design voltage: 14800 mV
design capacity warning: 1630 mAh
design capacity low: 100 mAh
capacity granularity 1: 1 mAh
capacity granularity 2: 1 mAh
model number: Batt
serial number: 1
battery type: LION
OEM info: Note Book inanna:~ cat /proc/acpi/battery/BAT0/state
present: yes
capacity state: ok
charging state: discharging
present rate: 1145 mA
remaining capacity: 1796 mAh
present voltage: 14856 mV
Orig­i­nal DSDT AML Image
Orig­i­nal DSDT ASL Script
New DSDT AML Image
New DSDT ASL Script

ASL Patch

--- dsdt_original.asl 2004-05-24 19:01:06.839658672 -0700
+++ dsdt_new.asl 2004-05-24 18:52:41.000000000 -0700
@@ -301,12 +301,7 @@ Method (OSFL, 0, NotSerialized) {
- Store (0x01, Local0)
- If (MCTH (_OS, "Microsoft Windows NT"))
- { Store (0x00, Local0)
- }
- Return (Local0) } @@ -794,7 +789,7 @@ DMA (Compatibility, NotBusMaster, Transfer8) {} IO (Decode16, 0x03BC, 0x03BC, 0x01, 0x04) }
- /*** Missing EndDependentFunctions descriptor */ })
+ EndDependentFn()}) Name (EPPR, ResourceTemplate () { IRQNoFlags () {3,4,5,6,7,10,11,12}
@@ -3190,29 +3185,18 @@ } } - If (SS1)
- { Name (_SB.PCI0._S1D, 0x02) Name (_SB.PCI0.P0P1._S1D, 0x02) Name (_SB.PCI0.USB1._S1D, 0x02) Name (_SB.PCI0.USB2._S1D, 0x02) Name (_SB.PCI0.USB3._S1D, 0x02)
- }
-
- If (SS3)
- { Name (_SB.PCI0._S3D, 0x02) Name (_SB.PCI0.P0P1._S3D, 0x02) Name (_SB.PCI0.USB1._S3D, 0x02) Name (_SB.PCI0.USB2._S3D, 0x02) Name (_SB.PCI0.USB3._S3D, 0x02)
- }
-
- If (SS4)
- { Name (_SB.PCI0._S4D, 0x02) Name (_SB.PCI0.P0P1._S4D, 0x02)
- } Name (IOXB, 0x05C0) Name (IOXL, 0x10)
@@ -3291,8 +3275,6 @@ 0x00, 0x00 })
- If (SS1)
- { Name (_S1, Package (0x04) { 0x02,
@@ -3300,10 +3282,6 @@ 0x00, 0x00 })
- }
-
- If (SS3)
- { Name (_S3, Package (0x04) { 0x05,
@@ -3311,10 +3289,6 @@ 0x00, 0x00 })
- }
-
- If (SS4)
- { Name (_S4, Package (0x04) { 0x06,
@@ -3322,8 +3296,6 @@ 0x00, 0x00 })
- }
- Name (_S5, Package (0x04) { 0x07,


Linux Instal­la­tionpowered by gentoo linux Because I’m an anti-authoritarian speed hun­gry control-freak when it comes to my OS, I picked Gen­too for my Linux dis­tri­b­u­tion. It’s a lit­tle tricker to install — buy hey, if I wanted a GUI install I’d be using Win­dows. Besides the doc­u­men­ta­tion for Gen­too is incred­i­ble and I’ve used it as a teach­ing plat­form before to teach Linux — it’s that good. Kudos to the Gen­too team for putting together a great dis­tri­b­u­tion. The infor­ma­tion below is Gentoo-centric but I’m sure any linux 2.6 based dis­tri­b­u­tion would work with small changes. If you get stuck drop me an email and I’ll do my best to help you out.

I used a rather old Gen­too Live CD to boot up with and installed every­thing over the net. Instal­la­tion worked with­out a hitch.

make.conf set­tings

Set­ting up your CFLAGS is depen­dent upon which ver­sion of GCC you are using so I’ve included the con­ser­v­a­tive GCC 3.3 set­tings as well as the GCC 3.4.1(snapshot) set­tings that I actu­ally used. I’ve ver­ifed a work­ing install with both though and encounted no problems.

Com­piler Version CFLAGS
GCC 3.3 –march=pentium3 –O2 –pipe –ffast-math –fomit-frame-pointer
GCC 3.4.1 20040514 (prerelease) –g0 –O2 –s –pipe –msse2 –momit-leaf-frame-pointer –mmmx –mfpmath=sse –march=pentium-m
–maccumulate-outgoing-args –fweb –funit-at-a-time –ftracer –fprefetch-loop-arrays
–fomit-frame-pointer –ffast-math –falign-functions=64 –D__NO_MATH_INLINES

For USE flags I have the following:

USE="aac acl acpi acpi4linux adns aim apache2 artswrappersuid audiofile autofs bluetooth caps curl dga distribution doc dv dvb dvd ethereal evo faad fbcon ffmpeg fftw flac flash gb gcj gd geoip gimp gimpprint glade gmp gnomedb gstreamer gtkhtml icc-pgo icq idea ieee1394 imagemagick imap imlib2 innodb irda jabber java javascript jbig jdepend junit lcms libcaca libgda lufsusermount lzw-tiff maildir mcal md5sum mmx mng mono mozcalendar mozp3p mozsvg mpeg4 msn nptl odbc offensive ofx ooo-kde openal operanom2 optional-tasks oscar pcmcia pcre php pic plotutils pnp ppds radeon samba slp snmp sox speex sqlite sse sse2 svg theora tiff transcode trusted type1 usb v4l v4l2 videos wifi wmf X509 xemacs xface xfs xine xinerama xml xosd xvid yahoo yv12"

Pack­ages that are handy

emerge acpid cpufreqd hddtemp hotplug pcmcia-cs smartmontools synaptics


Ker­nel Options I decided to run a 2.6 ker­nel and have had no real prob­lems with it at all. I’m cur­rently run­ning 2.6.6-mm5 which seems to feel a lit­tle nicer under inter­ac­tive use than the stock 2.6.6. Below are my dmesg out­put and the ker­nel con­fig. I gen­er­ally com­pile my ker­nels with GCC 3.4 though you can’t use the above men­tioned –march=pentium-m flag (the ker­nel uses –march=pentium3 any­ways) as it gen­er­ates non-bootable kernels.

dmesg out­put
.con­fig for 2.6.6-mm5 + acpi_dsdt_initrd

Some things to note:

  • make sure you enable ACPI
  • cpufreqd is your friend — remem­ber to select “Enhanced Speed­step” in your kernel.
  • the ALSA sound card is the “Intel 810″
  • other i810 fea­tures like the hard­ware ran­dom gen­er­a­tor don’t work so leave them off
  • the IDE dri­ver is the Intel PIIX


Net­work Setup LAN Setup (RTL8139) There isn’t really any setup to do, the ker­nel Real­tek 8139too
dri­ver works perfectly.

Wifi Setup (RTL8180)

Real­tek says that they will be releas­ing a 2.6 dri­ver for the 8180 but I“ve not seen it and repeated emails to Real­tek net either morons (“We don’t sup­port Win­dows 2.6, please use XP.”) or just no response. Luck­ily, Pon­tus Fuchs and Girid­har Pemmasani’s excel­lent Ndis­Wrap­per loads the RTL8180 win­dows dri­ver and works very well. The only hitch is the lack of sig­nal strength indi­ca­tion. I’ve used the CVS and the 0.6 ver­sion in Gen­too portage with success.


Modem Setup If you use 2.6.6-mm5 or greater there is sup­port for the ICH4 AC97 soft modem in the ALSA dri­vers. In order to use this you will also need the slmo­dem pack­age. Make sure you com­pile in ALSA sup­port (see the slmodem’s README).

It looks like sup­port for this will be present soon as the ven­dor also puts out the slmo­dem pro­gram. The cur­rent sup­port is very beta and in my case I couldn’t get the modem to dial. All I get is “NO DAILTONE”. It does work from Win­dows though, so I think for the mean­time I’ll just wait until the good folks at SMlink fin­ish the support.


X11 Con­fig­u­ra­tion Using the lat­est X.org X11 snap­shot I had no prob­lems at all get­ting every­thing up and run­ning quickly. If you want to run games though you will prob­a­bly be a lit­tle dis­ap­pointed with ATI’ FGLRX dri­ver. It runs for me the first time I fire up X11 after a boot and gives great frame rates and beau­ti­ful play on UT2004. But woe be unto he who switches to a VT or restarts his X server. I fid­dled for a whole day try­ing all the dri­ver set­tings and even went back to GCC 3.3 and a 2.4 ker­nel to no avail. I like being able to switch to the con­sole or log out so this was too sucky for me and I just use the stan­dard radeon dri­vers now. In the xorg.conf below I have the fglrx dri­ver as “Card1” so if you want to use it just switch the card in the “Screen” sec­tion. Hope­fully this sit­u­a­tion will improve…

xorg.conf


Soft­ware Sus­pend The stock ker­nel suspend-to-disk (S4) dri­vers don’t work on this lap­top. At all. Unless you like read­ing ker­nel oopses. But that’s OK because Nigel Cun­ning­ham has been work­ing on a replace­ment called <drum roll please>… Soft­ware Sus­pend 2.

Using a stock 2.6.5 (as well as the 2.6.5-gentoo-r1 ker­nel) and the 2.0.0.66 swsusp patch from the source­forge down­load page I’ve man­aged over 50 sus­pend and resume cycles with­out problems.


Update 2004 Novem­ber: New BIOS avail­able There is a new BIOS from ECS that fixes some odd dis­play prob­lems that peo­ple have reported to me as well as adds sup­port for the new Dothan chips. You can grab it here:

2004 Novem­ber G551 Bios Download

If you can’t get a copy of it, let me know and I’ll send you one that I’ve archived.