So, it’s payday, and I’m wandering through BJ’s (a local warehouse club) buying a few bulk staples when my eyes lit upon an Averatec 3250H1 laptop. And what’s this? Price reduced? $750? Let’s just say it followed me home and I decided to keep it. Besides, it’s my birthday. Anyway, what I really wanted it for was a nice Linux laptop, so I took it home and got started.
On getting it home, the first step was to fire it up. Microsoft Windows XP Home Edition came preinstalled, so I let that boot up just to see how the display looked. When it came around to asking me to accept the end user license agreement, I clicked “No, I do not accept” with a bit of glee and let it shutdown the system. I then tossed in a Knoppix CD and booted up Linux on it. Knoppix found all the hardware except the 802.11g, so I did some quick research and found that the wireless was an RaLink chipset that was supported by NDISWrapper and a native linux driver. Anyway, here’s a list of the hardware in the box (with links to linux drivers where appropriate):
- 802.11g – RaLink Tech 2500, uses native drivers or NDISWrapper. I’m currently using the NDISWrapper drivers as they were a bit easier to set up, but I plan to test the native drivers as well. Apparently, the native drivers have recently been released under the GPL, which is good news. There’s also another group working on open source drivers for this chipset. One quirk with the NDISWrapper (may also apply to the native driver, but I’ve not tried them yet), if the wireless is turned off (the button next to the power switch), when the drivers try to load, the card will not associate with an AP (even after turning the wireless on). You’ll have to turn on the wireless, unload NDISWrapper, then reload it for things to work. This is mostly a nuisance because the BIOS turns off the wireless when coming out of suspend.
- Modem – Smart Link, it appears to work, however, I’ve not a lot of use for a modem, so I can’t say how well it performs.
- Display – 1024×768 Via KM400. The framebuffer X drivers work well, as does VESA. I’ve not gotten to getting accelerated X going yet.
- Touchpad – Synaptics, the linked driver even makes use of the scroll areas along the bottom and right sides of the pad (buttons 4,5,6 and 7).
The remaining hardware is pretty straightforward stuff and won’t cause any problems in the install. The sound is supported by the kernel ALSA drivers for the VIA chipset, PCMCIA is handled by Yenta and the USB ports, the EHCI drivers.
I did a full on, start from a bare hard drive, compile it all yourself, Gentoo install using a minimal install CD. This kept me out of trouble for the evening. I did set up distcc and use a couple of other machines to help out with the compilation. In any case, after a couple of hours, I was able to boot my new install from the hard drive. At which point I ran into my first problem, the default Gentoo kernel (which I was using out of laziness), uses vesafb-tng, a new version of the framebuffer code. This apparently has problems with the chipset used in the Averatec. I switched back to the plain old vesafb driver and all was right with the world, the system booted, I got the penguin logo and we were off and running.
There had to be a skunk in the works somewhere, and here it is. The ACPI support has a few issues. Specifically, suspending to memory doesn’t seem to work correctly at all. The system appears to suspend, but when you restart it, it does a cold boot. Not at all what you want. The good news is that the software suspend built into the Gentoo 2.6 kernel works quite well, so you can suspend to disk just fine. You will have to add “pci=routeirq” to your kernel command line, however. If you don’t, you’ll find that the USB ports fail to work after a resume. I also recommend going into the BIOS and running both the fan and battery training programs. The fan training reduces the fan speed and makes it much quieter. It only takes about ten minutes to run. The battery training on the other hand, takes several hours to run, but when it’s complete, gives you a more accurate power gauge.
*Update 2005-01-25: I switched to kernel 2.6.11-rc2 and was able to remove the pci=routeirq kernel parameter. Also, I added the swsusp2 kernel patch and hibernate script to the system. This allows me to hibernate to disk quite cleanly. I set the hibernate configuration to use ACPI suspend to memory mode instead of power off. There’s a bug in the ACPI implementation that causes it to do a hard reboot on power up, which is ok, as we’re suspending to disk anyway. It has the advantage of restoring the wireless state (on/off) and blinks the power light, letting you know you’ve suspended.
All in all, I’m very happy with the system. I’ve gotten all the hardware working with minimal fuss and it seems rock steady. I still need to play with ACPI events some so that it will suspend correctly when I close the lid or press the power switch. I also want to try to get some accelerated drivers for X working and the native wireless drivers. But in the meantime, I’ve got myself a nice, lightweight laptop for well under $1000 that plays well with Linux. Can’t hardly beat that.