Linux Fedora Core 4 on a Dell Latitude D810

by Doke Scott, 2005.8.12
based on a Debian install on a similar laptop by MaF

Hardware Components
Status under Linux
Notes
Pentium M 750 cpu, 1.86 GHz Works No special procedure required during installation (NSP).
Speed Step CPU frequency scaling Works Download PowerNowd
15.4 WUXGA 1920x1200 Widescreen Display Works Needed to tweek Xorg.conf for prefered resolution
Radeon Mobility X600 graphics controler with 128MB Works NSP
Alps touchpad mouse Works NSP
eraser mouse Works NSP
512MB DDRII SDRAM, one SODIMM Works NSP
60GB 7200RPM SATA hard drive Works NSP
Intel Corporation 82801FBM (ICH6M) SATA Controller Works NSP
8X DVD+/-RW Reading works, didn't try burning NSP
Broadcom Corporation NetXtreme BCM5751 Gigabit Ethernet Works NSP
Intel Corporation PRO/Wireless 2200BG (rev 05) 802.11b/g internal Works Need to download firmware
Intel 82801FB/FBM/FR/FW/FRW (IC H6 Family) AC'97 Audio Controller (rev 03) Works Need to turn on "external amplifier" in alsamixer
USB Works NSP
external VGA output Works NSP
7200 mAh 9 cell battery Works NSP
Internal 56k Modem Didn't test  
Suspend to disk Doesn't work In progress
Suspend to RAM Doesn't work Given up

Install

I installed Fedora Core 4 from a DVD. I used the graphical install, and the "workstation" config. I told it to delete all existing partitions (which may have been a mistake, see the section below on suspend to disk).

The only problem during install was I couldn't hear the soundcard config test sound (see below).

Kernel

Fedora Core 4 came with kernel 2.6.11-1.1369_FC4, which worked. 2.6.12-1.1398_FC4 was available, so I upgraded. It also worked.

I built 2.6.12-3 from standard kernal.org source, in order to try the software suspend features. The suspend stuff didn't work (see below), but otherwise the kernel worked fine.

X11 window system and the display

X worked as installed, but the default resolution was 1280x1024 with a 1280x800 window, so it was scrolling the screen over a larger virtual screen. Ctrl-Alt-Fn-+ (using the Fn-+ to get the keypad +) switched the resolution to 1280x1024, which didn't scroll, but looked squished.

The native lcd resolution on this diplay is 1920x1200. Which I found unreadable. This is a limitation of my eyes, not the screen. I decided to use 1280x800. This means I should have ordered the model with the WXGA screen instead of the WUXGA one.

I edited the /etc/X11/xorg.conf file, to change the Screen section to look like this:

[...]
Section "Screen"
[...]
        DefaultDepth     24
        SubSection "Display"
                Viewport   0 0
                Virtual   1280 800
                Depth     24
                Modes    "1280x800" "1024x768" "800x600" 
        EndSubSection
EndSection
[...]

This forces the virtual screen size to 1280x800. The default display resolution is 1280x800, with two zoom settings.

GL acceleration seems to be working. At least, the GL screensavers work.

Touchpad and Eraser Mouse

This laptop has both an Alps touchpad mouse, and an eraser mouse in the middle of the keyboard, each with it's own pair of buttons. The touchpad is supported by the synaptics driver in Xorg. The eraser works better for large inaccurate movements, while the touchpad works better for small ones. The touchpad has the incredibly irritating "tap to click" feature, where inadvertently touching the pad causes a mouse click, usually on something you don't want. I turned the tap feature off by editing the /etc/X11/xorg.conf file and adding the MaxTapTime option line. I also added the SHMConfig line which allows me to alter the synaptics driver settings on the fly with synclient.
[...]
Section "InputDevice"
        Identifier  "Synaptics"
	[...]
        Option      "MaxTapTime" "0"
        Option      "SHMConfig" "on"
EndSection
[...]

Now I can alter the touchpad settings within X. For example, I can disable the touchpad completely with

synclient TouchpadOff=1

Wired ethernet

This worked "out of the box", ie I didn't have to do anything special to the Fedora install. No problems.

Wireless ethernet

The laptop contains a Intel PRO/Wireless 2200BG 802.11b/g mini-pci adaptor card. It's supported by the ipw2200 driver, which Fedora includes. The driver needs to download some firmware to the card during initialization. Unfortunately, Fedora does not include that firmware. You need to download them from http://ipw2200.sourceforge.net/firmware.php, and unpack the tar file into /lib/firmware.

Watch out! There are multiple versions of the firmware, and you need the right version for the driver in your kernel. Fedora core 4 ships with version 1.0.0 of the driver, which needs the 2.2 version of the firmware. The 2.3 or newer firmware will NOT work.

Once you have the firmware installed in /lib/firmware, unload and reload the ipw2200 module.

rmmod ipw2200
modprobe ipw2200

The iwconfig command should list the adapter as eth1, and it's status.

You may need to create a file /etc/sysconfig/network-scripts/ifcfg-eth1, containing:

DEVICE=eth1
BOOTPROTO=dhcp
ONBOOT=yes
TYPE=Ethernet

Once that file exists, /sbin/ifup eth1, should bring up wireless networking.

I work for the NSS department of University of Delaware, so I wanted to be able to use both departmental hosts, and global University ones, without typing the whole fully qualified name. Ie I wanted telnet foo to contact foo.nss.udel.edu, and telnet www to contact www.udel.edu. This is normally done by editing the /etc/resolv.conf file, but dhclient overwrites the resolv.conf each time it obtains a lease. So I added this line to the ifcfg-eth1 file.

SEARCH="udel.edu nss.udel.edu"

Sound

During install, I couldn't hear the test sound. It turns out Fedora was correctly detecting the sound chipset and using the correct driver module. However, it had neglected to turn on the "external amplifier" that feeds the speakers. To turn it on, run alsamixer, right-arrow the last entry "external amplifier", and hit "m" to unmute it. After that, sound should be audible. Test it with "aplay sound-file".

Speed Step

I installed PowerNowd, and it works well for controlling the cpu speed. I didn't have to do anything with kernel modules. The speed can be adjusted from 800MHz to 1.86GHz. At 800MHz, with a dim screen, and little activity, the battery can last up to 5 hours. At 1.8GHz, you might get 2 hours.

Battery Monitor

Gnome and KDE both have panel applets for this. The gnome one works. I havn't tried the KDE one. If you want to doublecheck them, or write your own stuff, the data is in /proc/acpi/battery/BAT0/{info,state}

CPU Temperature

You can get the cpu temperature from /proc/acpi/thermal_zone/THM/temperature. When the laptop is at rest, I get about 35C. When it's active, I get around 40C. When it's active, and on my lap (so my legs block the air vents on the bottom), it goes up to 47C. The safety auto-shutdown threshold seems to be 95C. I'm not certain where the cpu will start throttling itself.

USB

USB worked "out of the box". I tried a USB flash drive and a USB mouse, both worked immediately. The USB flash showed up as /dev/sdb.

VGA output for an external monitor

This mostly worked "out of the box". The display on the external monitor (actually a sony video projector) looks fine. However, I can't turn it off. The Fn key sequence that is supposed to do that doesn't do anything. I'm not certain this is a problem. I can always just unplug the cable.

Suspend to Disk (aka hibernate)

I havn't gotten this to work right. I can suspend it with this script (closely based on one from MaF), and it seems to save state, but when it powers back on, it boots normally, ignoring the saved data. There's an error in the log about being unable to write to the disk. Maybe this is because I deleted all partitions on the drive, including the small partition at the beginning? Maybe I need some driver to be built into the kernel instead of a module?

Note, to even try this you'll need to rebuild the kernel and activate the software suspend feature. The Fedora kernel does not include it. They think it's too unstable.

Suspend to Ram (aka sleep)

This doesn't work right, and from what I read on the net, probably won't for a long time. I can suspend it with this script, and get the pulsing power led, but when it returns the video is blank. You can switch to other virtual consoles, and use some things, but in general most of the hardware is totally confused. For example, the eraser mouse works eraticly. A reboot won't fix everything, it needs a power cycle.

Apparently, a lot of the kernel drivers don't know to reinitialize the hardware after the wakeup. I hear a lot of the kernel module developers just aren't interested enough in making it work. Someone needs to hit the lottery and give laptops to all the kernel developers.