Running Linux on the E-Machines M5310 Laptop

Updates


04.29.2004 The Linux NDIS Wrapper (Web Site) works with the included Broadcom wireless interface. Unfortunately, it only seems to work on my system for a short period of time. It's been a couple of months since I tried it, but it's definitely worth further investigation. This driver, unlike the Intersil drivers I'm using for a Netgear PCMCIA card, work with the standard Linux wireless utilities.

SUCCESS: Using Kernel 2.6.5 and NDIS Wrapper 0.7, I now have the system running on the Broadcom interface, and it's no longer losing the connection every few minutes. Performance seems as good or better than the older Intersil drivers I was using on the Netgear card.


12.10.2003 Using Kino along with a Sony Mini DV camera produced excellent results through firewire. Just make sure you modprobe all of the right firewire modules if you compiled them as loadable modules.

Overview

The E-Machines M5310 Laptop offers a lot of power in an inexpensive package. You can find a review of the system on the JJCC web site. Needless to say, as with almost all PC laptops, installing a non-Windows operating system can turn into a challenge. However, the M5310 running a 2.6 development kernel with a few add-ons works nicely under Gentoo Linux. Unfortunately, stable kernels enter an infinite loop on the usb hotplug system.

Hardware

Before installing Linux, it is useful to investigate the underlying hardware using the pre-installed version of Windows. The Device Manager in the System tool allows you to print out more information than you want (and less in some cases).

The M5310 includes the following:

  • AMD Athlon XP-M 2400+ Processor
  • Broadcom 4400 Integrated Ethernet and 802.11g Wireless
  • Ali 54xx Sound
  • ATI Radeon Mobility Video
  • 3 USB 2.0 Ports
  • IEEE 1394 Firewire
  • Synaptics Touchpad
  • 56k Modem
  • DVD-ROM / CD-RW Combo Drive
  • One Type-II Cardbus Socket

Prepare to be disappointed because NO drivers exist for the integrated wireless. To be truly mobile, you will need a Cardbus 802.11b/g card. In my case, I installed a Netgear 802.11g (WG511) card. If you do not need 802.11g, I would highly recommend looking at the kernel configuration options and selecting a fully supported wireless card. The drivers for the WG511 come from a 3rd party and do not install easily on a 2.6.x kernel.

Operating System Choice

Having worked more with FreeBSD on the server side, the Gentoo Linux Distribution caught my attention as a suitable candidate. You can read more about the advantages and disadvantages of Gentoo on their site. I will say, however, that the install is not for the point and click user. You will tend to get your hands a little dirty when you install Gentoo, especially on the M5310 where we need a custom-configured beta kernel to get the hardware support we need.

If you decide to go with another distribution, you can use this document as a guide when configuring your 2.6 kernel.

Installation

  1. Go ahead and boot into the preinstalled Windows XP.
  2. Download the latest Gentoo Athlon Live CD ISO and burn it to CD. You can find some freeware Windows applications to burn ISOs for you on Tucows.
  3. Keep the CD in the drive and reboot. This should boot you into the Gentoo Live CD.
  4. If you're unfamiliar with Gentoo, the Live CD gives you a working Linux system running off of a CD. From here, you configure your hard drives, configure and install a kernel, configure and install a boot loader, and install any other necessary software to get your system up and running. There is no install program.
  5. Follow the Gentoo instructions using a Stage 3 install and build your own kernel.
  6. To build your kernel, use the development-sources kernel. You should be able to use a command like "emerge sys-kernel/development-sources". Note that I'm using 2.6-test6 on my system currently. Adjust which kernel source you decide to use appropriately.
  7. This will give you development sources in /usr/src with a symlink called linux-beta. The symlink often gets hooked up wrong. Check it before you proceed.
  8. Configure your kernel with the usual options and make sure to include the following features. Use Modules where possible. You can review my configuration if you need help.
    • Synaptics Touchpad Kernel Support
    • EHCI for USB 2.0
    • OHCI for USB 1.x Compatibility
    • B44 Modules for 10/100 Ethernet
    • Advanced Linux Sound Architecture (ALSA) for ALI 54xx Support
    • Turn off APM Support
    • Turn on ACPI Support
    • Include PCMCIA CardBus Support with Yenta and Wireless
    • IEEE 1394
    • To use the CD burning features of the CD/RW, you will need the SCSI emulation support for IDE devices. You will likely need to pass the kernel parameter hdb=ide-scsi to get this to work (I haven't tested this function).

    Note that if you use modules, you may have to load them through /etc/modules.autoload.d/kernel-2.6. Use the lsmod utility to see which modules have loaded and modprobe to manually load modules. You might also make sure that sound and network drivers are listed in the hotplug blacklist file.

  9. Build and install the kernel as directed by the Gentoo installation instructions.
  10. Complete the remaining Gentoo installation instructions and reboot your machine.
  11. At this point, you need to install XFree86 4.x. To make XFree86 work well with this laptop, you need to add the Synaptics XFree86 touchpad driver and configure the ATI Radeon driver for 1280x800 resolution. See my XFree86.config for details. The Synaptics touchpad driver can be found at here.
  12. That should complete M5310 specific installation. You'll likely want to add Gnome or KDE using Gentoo Portage.

Problems and Todos:

  • Suspend: I haven't yet tackled this one. Suspend support seems to be changing in the 2.6.x kernel series.
  • Sound: Use alsamixer to both turn up the volume and un-mute your sound. CD audio still doesn't work for me, but I can watch DVDs using Ogle.
  • Touchpad: I need to find a way to turn off tap clicking. My mouse is all over the place if I let my wrists fall and swipe the touchpad.
  • Modem: Haven't tried it yet.
  • Keyboard: Haven't attempted to use the macro keys up by the power button.
  • USB and Firewire: The core drivers load, but I haven't connected anything to them yet.



Copyright J&J Computer Consulting, All Rights Reserved