Boo & Ed's
Web Pages

Albums
News
Ed's CV/Resume
Computing
   Dell D820
   ThinkPad T42p
   ThinkPad A22p
   ThinkPad i1560
   Sony Ericsson Z520a
Ed's Blog
PGP Key




Fedora Core 6 x86_64 on a Dell D820

So why get a Dell?

I spend a large fraction of my waking life doing software development and model runs. Although most of my work happens on various Beowulf clusters, my primary (almost "only") connection to it all is through my laptop. Up until this purchase I was exclusively a ThinkPad user. So why the switch? I think the plusses outweighted the minuses:

  • Minus ::   The two-button mouse is inferior. Full stop.
  • Minus ::   The keyboard on even the higher-end Dells is not as nice as those on the ThinkPads. I especially miss the extra keys (for desktop switching) alongside the arrow keys.
  • Plus ::   The WUXGA screen is lovely. At the time of purchase, Lenovo did not sell a single laptop model that provided WUXGA resolution.
  • Plus ::   The Intel graphics chipset works nicely with the free X.org drivers. Having a laptop that will reliably suspend/resume is a big plus! At the time of purchase the Lenovo models only shipped with poorly supported AMD/ATI graphics chipsets.
  • Plus ::   The price of the Dell was competitive but I've always been willing to pay a premium for a good laptop hardware.
  • Plus ::   Recently, Dell has put a lot of effort into supporting Fedora. In particular, Matt Domsch has done a lot of good work for the Fedora Project. I applaud Dell for their recent improvements and urge them to put more effort into Fedora and other F/OSS projects.

Technical Notes

The machine shipped (2007-03-27) with the following hardware and (supposedly) Windows XP. I don't actually know whether Windows was installed since the machine was initially booted with a Fedora Core 6 install DVD and the hard disk was immediately wiped and re-partitioned.

The Fedora Core 6 install had just one wrinkle--the video driver did not work for the default graphical install. The result was a hard lockup that could only be recovered by unplugging both the A/C power and the battery. The good news is that the text install ("linux text") method worked nicely. Following the initial install, the very helpful configuration tips provided by Kevin Fenzi:

Dell Latitude D820 Review

were followed and the result was a nicely working system:

Hardware Notes Works?
Core 2 Duo 2.16GHz Works nicely with FC-6 for x86_64 -- the dual-core is very speedy for repeated software builds, model runs, etc. YES
Intel Graphics (945GM/GMS/940GML) with WUXGA (1920x1200) Following the above (Kevin's) directions it all works nicely including OpenGL and suspend/resume within X11 with the i810 Xorg driver and the 915resolution BIOS helper package. The WUXGA screen is big and bright. Also, the auto-brightness ("Fn-Left-Arrow") feature works although I think it is mostly a silly gimmick. YES
ACPI Battery status works, battery life is good, and Suspend/Resume (ACPI S3 using "pm-suspend") also works nicely. I have not yet tried swsusp since S3 sleep is fast and convenient. YES
USB Works nicely with a USB thumb drive. YES
Sound After configuring with "system-config-soundcard" and running "alsamixer", the sound works nicely. After suspend/resume the sound will work after "alsamixer" or "amixer" is used to mute and then un-mute the sound system. Also, the "lineakd" program works with the sound buttons (please see below). YES
FireWire Have not (yet!) had a chance to try it. Unknown
Bluetooth Works with a Sony Ericsson Z520a phone. YES
Cardbus and pcexpress slots Have not (yet!) had a chance to try it. Unknown
IRDA Have not (yet!) had a chance to try it. Unknown
DVD Works nicely for reading and have not tried writing. YES
Wired Ethernet (Broadcom) Works nicely with the default Tigon "tg3" driver. YES
Wifi with Intel 3945 Works with the ipw3945 driver (see below). YES
UPEK Fingerprint Reader Works with the thinkfinger driver and with PAM (see below). YES

Notes:

  • The hardware is reported by "lspci" as:

       00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express Memory Controller Hub (rev 03)
       00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
       00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
       00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 01)
       00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 01)
       00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 01)
       00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 01)
       00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 01)
       00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 01)
       00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 01)
       00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 01)
       00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 01)
       00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 01)
       00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e1)
       00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 01)
       00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller IDE (rev 01)
       00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 01)
       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 BCM5752 Gigabit Ethernet PCI Express (rev 02)
       0c:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)
    
  • The wifi driver was installed using the Dell "dkms" dynamic kernel module system and the card seems to work best when manually brought up with the commands:

       iwconfig eth1 essid MY_ESSID
       ifconfig eth1 up
       dhclient eth1
    
  • Video resolution can be set with:

       echo 'RESOLUTION="3c 1920 1200"' >> /etc/sysconfig/915resolution
    
  • The video suspend/resume issues can be fixed by setting:

       $ cat /etc/acpi/events/
       power.conf       video.conf       video.conf_ORIG  
       [daggett eh3.com]: cat /etc/acpi/events/video.conf
       # Configuration to turn on DPMS again on video activity, needed for some
       # laptops. Disabled by default, uncomment if your laptop display stays blank
       # after you close and open the lid.
       
       event=video.*
       action=/usr/sbin/vbetool dpms on
    

    and by adding:

       Section "ServerFlags"
            Option      "NoPM" "true"
       EndSection
    

    to "/etc/X11/xorg.conf".

  • Install the thinkfinger driver with "yum install thinkfinger" and then add the two following lines to "/etc/pam.d/system-auth":

       auth        sufficient    pam_thinkfinger.so
       auth        required      pam_unix.so nullok_secure try_first_pass
    

    Then run "tf-tool --add-user root" and "tf-tool --add-user ${USERNAME}" to add the users you want. The next time you run "su" or try to login you should be greeted with the "Password or swipe finger:" prompt.

  • One can install lineakd with a quick "yum install lineakd" and the setup commands are:

       lineakd -c DELL-LT-D800
    

    Then edit the file "${HOME}/.lineak/lineakd.conf" which was generated by the previous command. The three lines I changed were:

       Mute = amixer set Master toggle
       VolumeDown = amixer set Master 2%-
       VolumeUp = amixer set Master 2%+
    

    Finally, run lineakd and/or add it to a set of automatically run programs at login time. The result is a working set of sound up/down/mute buttons.