Dell Latitude D600

From ArchWiki
Revision as of 14:13, 23 November 2011 by Kynikos (talk | contribs) (use new templates, see Help:Style)
Jump to: navigation, search

The Dell Latitude D600 was released on 3/12/03. At the time of its release it was met with great reviews. Despite being almost 5 years old this business laptop is perfectly capable of delivering a satisfying Linux experience.


This is not a guide on how to install Arch (for help with that see the installation guide), but rather an attempt to cover the steps of how to take full advantage of the laptop's hardware. Despite being an Arch-wiki page, everything explained here should apply to other Linux distributions as well.

Getting most of the hardware to work correctly under Linux, is not overly difficult (in fact these days most things are auto-detected, and "just work"TM. Keep in mind I am by no means an expert of hardware in Linux so you may find better solutions than the ones presented here. If you do please edit this guide so that other people may benefit as well.


As always the documentation for a Dell laptop is almost non-existant. The only documentation you are going to find for the d600 is the spec sheet and some useless pdf files (although the service guide can be useful if you need to take the laptop apart for some reason). So with that being said the only way to find out useful information is to inspect each individual hardware component.



  • Pentium M, with CPU frequency scaling
  • ATI Mobility Radeon 9000, including framebuffer (open source radeon driver)
  • Wireless card:
    • Intel 2200 Pro/Wireless Lan card (ipw2200 driver)
    • Broadcom BCM4306 rev2 Wireless card (b43legacy driver)
  • Sigmatel STAC9750 audio (including mixing with alsa)
  • Function/audio keys
  • Alps Touchpad and pointing stick (synaptics driver)
  • O2Media PCMCIA slot
  • CD/RW, DVD+/-RW
  • Broadcom BCM5702 ethernet card
  • Hardware monitoring (i8k kernel module, hddtemp)


  • IRDA
  • Modem
  • ACPI Sleep States



The D600 comes with either an Intel Pro Wireless 2200 or a Broadcom BCM4306 rev 2. Both cards work flawlessly with their ipw2200 or b43legacy drivers, respectively.

Intel PRO Wireless 2200

As the driver is already included in the kernel the only thing that needs to be done is to install the firmware.

# pacman -S ipw2200-fw

Now add the entry ipw2200 in the modules section of /etc/rc.conf, and add/change the line NET_PROFILES=(main). Now make a main network-profile in /etc/network-profilefollowing the template in that directory. It will look something like the following.

# Network Profile
DESCRIPTION="Default Network Profile"

# Network Settings

# Wireless Settings (optional)
#WIFI_INTERFACE=wlan0   # use this if you have a special wireless interface
                        # that is linked to the real $INTERFACE
WIFI_WAIT=2            # seconds to wait for the wireless card to

If you run into the strange problem of your wireless interface switching between eth0 and eth1 at boot then you may want to use nameif. Simply put your network id followed by the mac address in /etc/mactab.

eth0 00:0C:DB:E8:38:5A
wlan0 00:1F:12:62:2E:CC

(Taken from here.) In addition, a small change to /etc/rc.d/network is necessary to run the nameif command prior to configuring the interfaces. The following excerpt from /etc/rc.d/network shows the lines that need to be added. This change simply checks for the existance of the /etc/mactab file and if it exists executes nameif to assign interface names.

              stat_busy "Starting Network"
              ##### begin nameif change #####
              # set names
              if [ -n /etc/mactab ]; then
              ##### end nameif change #####
              # bring up bridge interfaces
              # bring up ethernet interfaces

Broadcom BCM4306 rev 2

Not long ago, Broadcom cards used to be a nightmare under Linux, until the b43 drivers came along. The b43 and b43legacy drivers are included in the kernel, so as with the Intel card, we just need to get the firmware for it.

If you have an Ethernet connection, install b43-fwcutter from pacman, like so:

 # pacman -S b43-fwcutter

If not, download the b43-fwcutter tarball and compile it:

 tar xjf b43-fwcutter-015.tar.bz2
 cd b43-fwcutter-015
 sudo make install
 cd ..

Next, you'll need to download the following two files:

And use b43-fwcutter to install the firmware files:

 $ tar xfvj broadcom-wl-
 # b43-fwcutter -w /lib/firmware wl_apsta-
 # b43-fwcutter --unsupported -w /lib/firmware broadcom-wl-

Since this card uses the b43legacy driver, we'll blacklist and remove the b43 driver just in case.

 # modprobe -r b43
 # echo "blacklist b43" >> /etc/modprobe.d/modprobe.conf

Finally, load the b43legacy driver:

 # modprobe b43legacy

Once the firmware is installed, NetworkManager and Wicd both handle the card flawlessly. I haven't tested any other connection managers, but those are the two most popular.

CPU Scaling

See CPU Frequency Scaling.

Some BIOS revisions don't work properly with acpi-cpufreq, likely due to the driver being buggy or incorrect DSDT tables. There isn't a fix for this that I know of yet.

Suspend to Ram

This is easily accomplished by installing uswsusp from AUR. Contrary to the ominous output from pacman no additional configuration is needed. Additionally, s2ram will probably output an error message saying that This machine can only suspend without framebuffer. but I have not encountered problems with resuming from suspend.

# s2ram -i
This machine can be identified by:
     sys_vendor   = "Dell Computer Corporation"
     sys_product  = "Latitude D600                   "
     sys_version  = ""
     bios_version = "A16"
# s2ram -f

Video Card

Use the open source "xf86-video-ati" radeon driver. ATI dropped support for the Radeon (RV250) Mobility FireGL 9000 after catalyst driver version 8.28.8.

The xf86-video-ati package is available in the Extra repository.