Debian an Dell Latitude D830

January 12th, 2010

The Dell Lattitude D830 is a quite capable business notebook. While the notebook itself is not considered high-end it still allows for good configurations. A definite downside is the battery which lasted only for 1 year and had to be replaced with a new battery pack (not part of warrenty of course).

All the following descriptions refer to the current Debian Squeeze (testing) using Linux Kernel 2.6.32 (trunk-5) from unstable repository.

As Dell allows different setups of the same hardware model here are the specs:

Hardware Status
CPU: Intel Core 2 Duo T7500 (2.2GHz)
2MB/4MB L2 Cache, 800MHz FSB
Works
All cores recognized. Hardware Virtualisation (VT extensions) working (must be enabled in the BIOS).
Memory: 2GB (2x1GB) 667MHz DDR2 SDRAM Works
Storage: Intel SATA IDE Controller Works
Using ata_piix module. AHCI untested.
Graphics: Nvidia Quadro NVS 135M Works
Using binary nvidia driver (nvidia-kernel-source from testing)
LAN: Integrated Broadcom Gigabit Ethernet Works
Uses in kernel tg3 driver.
WLAN: Broadcom BCM4328 802.11a/b/g/n Wireless Works
Uses broadcom-sta module, also working with ndiswrapper
Audio: Intel HD Audio Controller Works
Works using ALSA
Keyboard: Hotkeys Partially Working
Most Fn keys work, except those not producing key codes (Volume, Display Highlight, Sleep is working)

For a different hardware configuration see this post.

Hardware List (as shown by lspci):

00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 0c)
00:01.0 PCI bridge: Intel Corporation Mobile PM965/GM965/GL960 PCI Express Root Port (rev 0c)
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4 (rev 02)
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 02)
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 02)
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 02)
00:1c.3 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 4 (rev 02)
00:1c.5 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 6 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f2)
00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 02)
01:00.0 VGA compatible controller: nVidia Corporation Quadro NVS 135M (rev a1)
03:01.0 CardBus bridge: O2 Micro, Inc. Cardbus bridge (rev 21)
03:01.4 FireWire (IEEE 1394): O2 Micro, Inc. Firewire (IEEE 1394) (rev 02)
09:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5755M Gigabit Ethernet PCI Express (rev 02)
0c:00.0 Network controller: Broadcom Corporation BCM4328 802.11a/b/g/n (rev 03)

As most stuff works out of the box I will refer here only to the setup of the graphics controller and the wireless device.

Setup Nvidia Quadro NVS135M

First install the required packages (as root):

sh# aptitude install nvidia-kernel-common nvidia-kernel-source nvidia-glx

Then create the required kernel module (this assumes you have booted into the kernel already):

sh# m-a a-i nvidia
sh# modprobe nvidia

Be sure to configure your X server accordingly (here is a shortened xorg.conf):

Section "ServerLayout"
    Identifier     "Default Layout"
    Screen      0  "Screen0" 0 0
EndSection

Section "ServerFlags"
    Option         "Xinerama" "0"
EndSection

Section "Monitor"
    Identifier     "Generic Monitor"
    HorizSync       28.0 - 84.0
    VertRefresh     43.0 - 60.0
    Option         "DPMS"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Seiko"
    HorizSync       30.0 - 75.0
    VertRefresh     60.0
EndSection

Section "Device"
    Identifier     "Videocard0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "Quadro NVS 135M"
    Option         "AllowGLXWithComposite" "true"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Videocard0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "metamodes" "1680x1050 +0+0; 1280x800 +0+0; 1024x768 +0+0; 800x600 +0+0; 640x480 +0+0"
    Option         "AddARGBGLXVisuals" "True"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Setup Broadcom BCM4328 driver

First install the required packages (as root):

sh# aptitude install broadcom-sta-common broadcom-sta-source

Then create the required kernel module (this assumes you have booted into the kernel already):

sh# m-a a-i broadcom-sta
sh# modprobe wl

This will install and enable the broadcom-sta driver, which is known as the “wl.ko” kernel module. Be sure the unload all drivers using the device (e.g. ndiswrapper) beofre loading the wl.ko module.
Using the network-manager package a good mobile network configuration utility is available for CLI and desktop (system tray).

Enjoy!

Comments are closed.

primary