HARDWARE Dell Latitude D810

From Gentoo Linux Wiki

Jump to: navigation, search
This article is part of the Hardware series.
Laptops TV Tuner Cards Wireless Servers Storage Other Hardware Motherboards Related

Contents

[edit] Overview

This page gives precious hints on how to install gentoo on a Dell Latitude D810 laptop.

So far gentoo is working quite fine on this laptop.

Here are the remaining unfixed (by me at least!) issues:

  • Special keys (volume up, volume down, mute)

---> You can add Support for this keys in KDE by choosing an Inspiron 6xxx/8xxx layout in the control center

  • Boot failures due to ipw2200 module loading (though ipw2200 is being actively developed - perhaps these are now fixed?)

[edit] Compile Flags

The processor is a centrino / "Pentium M", based on the pentium 3 core. On gcc versions supporting it (>=3.4) you can use the -march=pentium-m -mfpmath=sse option, on older versions you can use -march=pentium3. (As with all i386 systems, -fomit-frame-pointer will result in more efficient code, but will make it impossible to produce stack traces. Only use it if you understand the consequences).

For emerge to take them into account when compiling, and thus optimize your binaries for this processor, put them in your CFLAGS variable, in /etc/make.conf.

[edit] Graphics

The D810 is available with a number of different graphics chipsets, including at least Intel I915, ATI X300, ATI X600, and Nvidia chipsets. Several types of screen with different native resolutions are available, in a wide (3:2) aspect ratio.

ATI's proprietary drivers are reported to work well with the X600 chipset:

If you have not emerged Xorg yet you can add the following line to your make.conf

VIDEO_CARDS="fglrx"

Then

emerge xorg-x11

If you have installed Xorg, you can simply run.

emerge ati-drivers

Then rebuild your xorg.conf

aticonfig --initial --input=/etc/X11/xorg.conf

With an ATI X300 chipset, I had less luck, and have fallen back on x.org's "radeon" driver, which does not support 3D acceleration. (Though I was able to get fglrx working, it was very flakey in combination with suspend2, and would sometimes appear slower than "radeon" even in 2D mode). 3D support for X300 chipsets is expected to appear in x.org version 7.

If you use the x.org radeon driver, don't forget to enable the "RenderAccel" and "DynamicClocks" options.

Nvidia's proprietary driver has never supported ACPI, and their chipset is the most expensive of those available, so it is probably best avoided.

Intel's chipset is well supported in x.org.

[edit] CD/DVD drive

Several drives are available with this laptop. They are attached to an Intel ICH6M SATA controller running in "combined mode", which means that they can either be accessed through a standard IDE driver or through the ata_piix SATA driver. The latter is very much recommended, as the standard IDE driver has no way to enable DMA on the CD/DVD interface.

To do that, you must use a proper recent kernel (mine is 2.6.14) and add this to your boot command line in grub.conf:

ide1=noprobe libata.atapi_enabled=1

The corresponding device will be /dev/sr0, you may need to add the appropriate link in /dev:

ln -s /dev/sr0 /dev/cdrom

Since you will have no need for IDE at all, you can completely disable it in your kernel configuration, which will save a few K of kernel text.

Recent kernel / hdparm versions will allow you to set the harddisk spindown. Add this line to /etc/conf.d/local.start:

hdparm -S4 /dev/sda

Kernel support for the particular SATA hardware configuration in the D810 is under active development (as of kernel 2.6.15). You will benefit from running as recent a kernel as possible.

[edit] Wireless LAN (Wifi)

The D810 is available with either Intel Centrino (IPW2200) or "Dell Wireless" (some horrible unsupported Broadcom chipset). Both are installed in a mini-PCI slot, so if you don't like what you've got, you can just buy a replacement. The notes below apply to the Intel cards. (Rumour has it that Dell have stopped selling D810s with the Broadcom chipset; if you are unlucky enough to have one, ndiswrapper may help you use it).

The IPW2200 is well-supported in recent kernels (2.6.14 or newer). You will need to install the proprietary part of the firmware:

emerge ipw2200-firmware

If you have an older kernel, or just fancy running a bleeding edge version of the driver, the driver can be installed seperately from the kernel:

emerge ipw2200-firmware ipw2200

The ipw2200 driver has been known to cause kernel panics. If you have this problem (or the problems described below), try using a different version of this driver (especially, if you are using a bleeding edge version, try using the stock kernel versions). The ipw2200 developers operate a bugzilla, and are very responsive to user bug reports, see [1].

I have experienced several system freeze at boot time when the module loads. However this happens scarcely, and on the next reboot everything works fine.

Also sometimes the module simply refuses to load its firmware, you can see it with dmesg. In this case, again, I simply reboot and it always works on the next boot.

Note also that this card should be configured as eth0, or eth1, etc; NOT as ra0. Running iwconfig without arguments will show you the interface name to use.

The green wifi LED will not work; however, you can see whether the RF kill switch is active by looking at the blue bluetooth LED.

[edit] Suspend/Resume

Suspend2 works very well with the D810, but you must use a recent kernel version. So:

echo "sys-kernel/suspend2-sources ~x86" >>/etc/portage/package.keywords
emerge suspend2-sources

Suspend-to-ram is much flakier. I have been unable to get it to work reliably.

[edit] Kernel

Here is my Media:kernel config file for a 2.6.14 gentoo kernel. Simply copy it as .config under /usr/src/linux before you run make menuconfig and build your kernel.

[edit] Power management

The D810 runs quite hot. The chief culprits seem to be the ATI graphics chipset and the wireless card. If you are using the x.org radeon driver, make sure to enable its powermanagement features ("man radeon" for details). Power management on the wifi card can be enabled by adding this line to /etc/conf.d/net:

iwconfig_eth1="power on"

It is also wise to configure the hard disk to spindown when not in use:

hdparm -S4 /dev/sda

You may wish to tune your syslog configuration (depends on what logger you use, often /etc/syslog-ng/syslog-ng.conf) to avoid the syslogger waking up the disk to record trivial log messages. Mounting all disk partitions with the "noatime" option is also a good idea.

There are numerous ways to set up processor power management. The simplest is this: make sure you have configured your kernel with support for Intel Enhanced Speedstep, and the "ondemand" governor, then issue this command:

echo ondemand >/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

If you do that, the processor itself will run very cool when not in use. The processor fan should actually stop unless you are in a hot environment, or making active use of your laptop.

[edit] BIOS Upgrade

See this HowTo.

Personal tools