Linux on Dell Latitude D800
Introduction
This is a short How-To on using Linux on a
Dell Latitude D800. The good news
at the beginning: (nearly) all hardware is supported.
However, I won't take any responsibility if something won't work, or your notebook gets damaged...
Hardware
Since it's a Dell Laptop this list reflects the configuration I choose. If
you want to have an overview of possible hardware choices, visit the
Dell site.
- CPU
-
Intel Pentium M processor 2.00GHz (2MB L2 Cache) (Centrino)
- IDE
-
Intel ICH4 IDE
- FUJITSU MHT2080AT PL, ATA DISK drive, (80026 MB) w/8192KiB Cache, CHS=65535/16/63, UDMA(100)
- _NEC DVD+RW ND-6100A, ATAPI CD/DVD-ROM drive, 2048kB Cache, UDMA(33)
- Modem
-
Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 01)
- Ethernet
-
Broadcom Corporation NetXtreme BCM5705M Gigabit Ethernet (rev 01)
- Sound
-
Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 01)
- Mouse
-
ALPS Dualpoint
- Graphics
-
nVidia Corporation NV31M [GeForce FX Go5650] (rev a1) (128MB)
- USB
-
Intel Corp. 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 01)
Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller (rev 01)
- ACPI
-
- Infrared
-
SMsC IrDA Controller
- PCMCIA
-
Texas Instruments PCI7510
- Bluetooth
-
Dell Wireless 300
- FireWire
-
Texas Instruments PCI4510
- Wireless
-
Intel PRO/Wireless 2200
- Sensors
-
SMM BIOS
- Smartcard Reader
-
(no idea)
Drivers
Most hardware is supported by standard drivers that should come with every up-to-date Linux
distribution. Currently I'm using Gentoo.
- CPU
-
The CPU is both supported by current kernels (choose architecture Pentium-M)
and current compilers (add -march=pentium-m to your CFLAGS).
You can upgrade the microcode of your CPU using the microcode device of
2.4.x kernels. A utility including latest microcode is available from
http://www.urbanmyth.org/microcode/.
The CPU supports extended speedstep (EST) which is supported by the
speedstep-centrino driver.
- Kernel
-
To make sure all your devices are supported you should be using a
current 2.6 kernel. At the time of writing I'm using linux 2.6.10.
- Modem
-
The modem is supported by the (binary) HSF driver from linuxant.
- Infrared
-
The infraread device can be operated both in SIR and FIR mode. It
is supported by the smsc-ircc2 driver. In order to make this
module work, you have to pass the IO/IRQ/DMA settings to it:
ircc_dma=3 ircc_irq=3 ircc_fir=0x280 ircc_sir=0x278.
- Ethernet
-
Works with the tg3 driver.
- Sound
-
Works with the ALSA intel8x0 driver.
- Mouse
-
The touchpad is a normal PS/2 device, so use /dev/psaux. Whether the touch or
an external mouse or both should be used can be controlled in the BIOS.
For X11 there is a special driver available which lets you configure
a lot of parameters of the touchpad, and what is best, it detects when
you are sliding on the edges and translates these movements to scroll
wheel events. The driver is available at http://w1.894.telia.com/~u89404340/touchpad/index.html. For configuring the driver, see the file README.alps
- Keyboard
-
Most of the keys (even the Fn keys) generate ordinary keycodes. I had to
register the scancodes for the battery (Fn+F3) and the CD key (Fn+F10):
/usr/bin/setkeycodes e007 121
/usr/bin/setkeycodes e009 123
The suspend button (Fn+ESC) generates the ACPI button/sleep event, the
WLAN (Fn+F2) and display brightness (Fn+cursors) keys work out of the box
(but do not generate any keypress event). The volume keys generate
ordinary keycodes, which you can map to whatever you need.
Only the LCD/CRT
key (Fn+F8) is neither generating any event nor really working...
- Graphics
-
The graphic card is supported both by the nv driver from
XOrg and the (binary - but accelerated) nvidia driver
from nvidia. To get all the fancy modes of your WUXGA display working,
you'll need to add the following modlines:
ModeLine "1920x1200" 162 1920 1984 2176 2480 1200 1201 1204 1250 +hsync +vsync
ModeLine "1680x1050" 147.14 1680 1784 1968 2256 1050 1051 1054 1087 +hsync +vsync
Modeline "1600x1024" 198.832 1600 1712 1888 2176 1024 1027 1030 1075 +hsync +vsync
ModeLine "1440x900" 130 1440 1452 1572 1896 900 901 904 937 +HSync +VSync
ModeLine "960x600" 60 960 968 1048 1264 600 601 603 625 +HSync +VSync
- USB
-
The USB controller is supported by the ehci and uhci drivers, whether the
devices you connect to it are supported is another question...
- ACPI
-
Appears to be fully functional.
- PCMCIA
-
PCMCIA support works with the yenta_socket module.
This module is included in late 2.4.x and 2.5.x kernels and in the
pcmcia-cs package.
- Bluetooth
-
Supported by the hci_usb driver.
- Firewire
-
Supported by the ohci1394 driver.
- Sensors
-
You can read out and control the temperature, fan speed, and special keys
using the i8k driver and
related utilties.
General
The Dell Latitude D800 is a very elegant and nice laptop. It works fine
with linux and I haven't experienced any problems so far which couldn't
be solved.
The notebook comes with a slot for the Kensignton MicroSaver. Information
is available at http://www.kensignton.com/.
I'm planning to add support for the smartcard reader, if you have any
information about it, please let me know.
Links
Contact
If you have questions, comments, bug reports, suggestions, or if you
just wish to send me some nice greetings, feel free to contact me:
jochen@penguin-breeder.org.