Debian setup Dell D420

This will be a lenny machine.

Installed testing with kernel 2.6.22 and then upgraded to 2.6.24 from sid

added modules

  • laptop-mode-tools
  • i8kutils




Worked out of the box with the default packages of the Debian install.

When docking/undocking, it works well if one suspends first. See below.

kernel 2.6.24 supports the opensource Intel wifi driver, but the oldish version which comes with 2.6.24 has some  suspend/resume issues. See the wifi section below.

Power management

use powertop to tune, and use laptop-mode-tools. Great package. The configuration script is easy to use and the documentation is easy to read. 

Display/3d Accel/Compiz

Display worked fine of the box.

Out of the box, OpenGL did not seem to work. glxgears was poor.
However, adding the module libgl1-mesa-dri fixed that. No need to modify xorg.conf

Then to get compiz working, the instructions on can be followed.

It works. Note that for some reason the focus of all new windows was set to be off, change this in the compiz settings manager.
However, compiz makes scrolling terribly slow, unusable.

I noticed recently the fuss about Microsoft and its "Vista Capable" badging. The D420 has this badge, and it is completely true: the hardware can not cope with fancy 3d effects. The funny thing is that until this scandal broke, I was really disappointed about the Compiz performance. Now I know that the Intel hardware in this machine is not really comfortable with 3D.  


Use the firmware-iwlwifi package
The wireless driver in kernel 2.6.24 works well except that the LED is always off (for me, this is ok)
I use network-manager (which is the default install). It works very well (for example, in swapping between the docked wired ethernet and undocked wireless). Note that the open-source driver version does not yet activate the LEDs (the previous driver did, but you need to go back to kernel 2.6.22 or earlier for that). You really should visit and search for iwlwifi. You will learn some good tips.


It works if you suspend before docking or undocking.

With the default settings, after undocking, the touchpad was behaving like a simple mouse: no sensitivity control, and no scrolling regions.
Also, if the machine was started undocked and then docked, the external mouse was not recognised.
I have it working;I am not sure what changes made it work and what didn't, but here is what I did:
Make the Touchpad the corepointer, and make the mouse "SendCoreEvents". This is the opposite of the default install.
Also changed the device of the touchpad.
Note also: suspend before docking/undocking is necessary. Probably the suspend script does some loading and unloading of modules that cause the hardware change to be detected.
It was terribly unreliable under Windows XP so

See the file below
Turn off the auto-start session command gsynaptics-init --sm-disable


This setup seems to let the touchpad work in the little docking station, and after it is undocked and redocked (I do a suspend before and after docking)
# xorg.conf (xorg X Window System server configuration file)
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
# Edit this file with caution, and see the xorg.conf manual page.
# (Type "man xorg.conf" at the shell prompt.)
# This file is automatically updated on xserver-xorg package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xorg
# package.
# If you have edited this file but would like it to be automatically updated
# again, run the following command:
#   sudo dpkg-reconfigure -phigh xserver-xorg

Section "InputDevice"
    Identifier    "Generic Keyboard"
    Driver        "kbd"
    Option        "CoreKeyboard"
    Option        "XkbRules"    "xorg"
    Option        "XkbModel"    "pc104"
    Option        "XkbLayout"    "us"

Section "InputDevice"
    Identifier    "Configured Mouse"
    Driver        "mouse"
    #Option        "CorePointer"
    Option        "SendCoreEvents"    "true"
    Option        "Device"        "/dev/input/mice"
    Option        "Protocol"        "ImPS/2"
    Option        "Emulate3Buttons"    "true"

Section "InputDevice"
    Identifier    "Synaptics Touchpad"
    Driver        "synaptics"
    Option        "CorePointer"
    #Option        "SendCoreEvents"    "true"
#    Option        "Device"        "/dev/psaux"
    Option        "Device"        "/dev/input/mice"
    Option        "Protocol"        "auto-dev"
    Option        "HorizScrollDelta"    "0"
    Option        "SHMConfig"        "true"

Section "Device"
    Identifier    "Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller"
    Driver        "intel"
    BusID        "PCI:0:2:0"
    Option "XAANoOffscreenPixmaps" "true"

Section "Monitor"
    Identifier    "Generic Monitor"
    Option        "DPMS"
    HorizSync    30-70
    VertRefresh    50-160

Section "Screen"
    Identifier    "Default Screen"
    Device        "Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller"
    Monitor        "Generic Monitor"
    DefaultDepth    24

Section "ServerLayout"
    Identifier    "Default Layout"
    Screen        "Default Screen"
    InputDevice    "Generic Keyboard"
    InputDevice    "Configured Mouse"
    InputDevice    "Synaptics Touchpad"