HARDWARE Dell Latitude D820
From Gentoo Linux Wiki
| Laptops • TV Tuner Cards • Wireless • Servers • Storage • Other Hardware • Motherboards • Related |
Contents |
[edit] Overview
When you order this model, make sure you order it with Intel 3945 wireless or Dell's Wireless 1390 and 1490 controllers. The laptop has an option on video controllers. If you purchase one with the nVidia of ATI video controller, you will be required to use proprietary drivers in order to get the most out of the card. If that is a major issue for you, select the Intel video controller. As far as I know the modem cannot be selected, so know that you will not be able to use the built-in modem.
Also note that the bluetooth and smartcard reader components are optional components. And that you have to select display size one of:
WUXGA (1920 X 1200 resolution) WSXGA+ (1680 X 1050 resolution) WXGA (1280 X 800 resolution)
[edit] Devices
# lspci 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)
# lsusb Bus 005 Device 010: ID 413c:8103 Dell Computer Corp. Wireless 350 Bluetooth Bus 005 Device 008: ID 413c:a005 Dell Computer Corp. Bus 005 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 004 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000 Bus 002 Device 010: ID 0b97:7762 O2 Micro, Inc. Oz776 SmartCard Reader Bus 002 Device 009: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader Bus 002 Device 008: ID 0b97:7761 O2 Micro, Inc. Bus 002 Device 001: ID 0000:0000
[edit] /etc/make.conf
Relevant settings:
| File: /etc/make.conf |
MAKEOPTS="-j3" # Core Duo #CFLAGS="-O2 -march=prescott -fomit-frame-pointer -pipe" # Core 2 Duo #CFLAGS="-O2 -march=nocona -fomit-frame-pointer -pipe" #for gcc-4.2 add -mtune=generic SUPPORT_ALSA=1 ALSA_CARDS="hda-intel" VIDEO_CARDS="i810" |
[edit] Kernel
| Linux Kernel Configuration: Dell Latitude D820 Configuration |
Processor type and features --->
[*] Symmetric multi-processing support
Subarchitecture Type (PC-compatible) --->
Processor family (Pentium-4/Celeron(P4-based)/Pentium-4 M/Xeon) --->
[*] Multi-core scheduler support
Power management options (ACPI, APM) --->
ACPI (Advanced Configuration and Power Interface) Support --->
[*] ACPI Support
[*] Sleep States
[ ] /proc/acpi/sleep (deprecated)
<M> AC Adapter
<M> Battery
<M> Button
<M> Video
<M> Processor
<M> Thermal Zone
APM (Advanced Power Management) BIOS Support --->
<M> APM (Advanced Power Management) BIOS support
CPU Frequency scaling --->
[*] CPU Frequency scaling
Default CPUFreq governor (performance) --->
<M> 'powersave' governor
<M> 'userspace' governor for userspace frequency scaling
<M> 'ondemand' cpufreq policy governor
<M> 'conservative' cpufreq governor
--- CPUFreq processor drivers
<M> Intel Enhanced SpeedStep
[*] Use ACPI tables to decode valid frequency/voltage pairs
[*] Built-in tables for Banias CPUs
Networking --->
<M> IrDA (infrared) subsystem support --->
<M> IrCOMM protocol
<M> Bluetooth subsystem support --->
Bluetooth device drivers --->
<M> HCI USB driver
[*] SCO (voice) support
<M> HCI UART driver
[*] UART (H4) protocol support
[*] BCSP protocol support
Device Drivers --->
SCSI device support --->
<M> SCSI device support
<M> SCSI disk support
<M> SCSI CDROM support
[*] Enable vendor-specific extensions (for SCSI CDROM)
<M> SCSI generic support
Serial ATA (prod) and Parallel ATA (experimental) drivers --->
<M> ATA device support
<M> Intel PIIX/ICH SATA support
IEEE 1394 (FireWire) support --->
<M> IEEE 1394 (FireWire) support
<M> OHCI-1394 support
Network device support --->
Ethernet (1000 Mbit) --->
<M> Broadcom Tigon3 support
Wireless LAN (non-hamradio) --->
[*] Wireless LAN drivers (non-hamradio) & Wireless Extensions
Character devices --->
Serial drivers --->
<M> 8250/16550 and compatible serial support
<M> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)
<M> Intel 830M, 845G, 852GM, 855GM, 865G
<M> i915 driver
I2C support --->
<M> I2C support
<M> I2C device interface
I2C Hardware Bus support --->
<M> Intel 82801 (ICH)
<M> Intel 810/815
Sound --->
<M> Sound card support
Advanced Linux Sound Architecture --->
<M> Advanced Linux Sound Architecture
PCI devices --->
<M> Intel HD Audio
USB support --->
<M> Support for Host-side USB
<M> EHCI HCD (USB 2.0) support
<M> OHCI HCD support
<M> UHCI HCD (most Intel and VIA) support
Cryptographic options --->
<M> ARC4 cipher algorithm
<M> Michael MIC keyed digest algorithm
Library routines --->
<M> CRC32 functions
|
| File: /etc/modules.autoload.d/kernel-2.6 |
ac battery button processor thermal video speedstep-centrino cpufreq-conservative cpufreq-ondemand cpufreq-powersave # required if the wireless switch is off bluetooth |
[edit] Clock
| File: /etc/conf.d/clock |
+CLOCK_OPTS="--directisa" |
[edit] Wireless
[edit] Intel 3945
This currently includes binary only module, but next version will be full open source. See HARDWARE ipw3945 for more info.
# emerge ipw3945 wpa_supplicant
[edit] Dell 1390 or 1490
Dell's Wireless 1390 and 1490 are Broadcom 43xx devices.
[edit] Power
# emerge -av laptop-mode-tools cpufreqd # rc-update add laptop_mode default # rc-update add cpufreqd default
[edit] Sound
# emerge alsa-utils # alsaconf # rc-update add alsasound default
[edit] Internal microphone
From this article. To turn on your internal microphone you have to
- add the model=ref option to the /etc/modules.d/snd_hda_intel file
- execute the command update-modules
- restart alsa with /etc/init.d/alsasound restart
- and choose "Front Mic" for the internal microphone in you notebook with your favourite mixer.
Within alsamixer, you might have to press <F5> to see the Front Mic option
| File: /etc/modules.d/snd_hda_intel |
options snd_hda_intel model=ref |
[edit] Bluetooth
Please look at the Gentoo Bluetooth guide: http://www.gentoo.org/doc/en/bluetooth-guide.xml
Ensure you have enabled "HCI USB driver" because the internal Bluetooth adapter is connected by USB
I have some kernel messages about "hci_usb_isoc_rx_submit: hci0 isoc rx submit failed urb df9a7c14 err -38". You can fix this by disabling isoc (Set isochronous transfers for SCO over HCI support):
| Code: Disable isoc |
$ su - # echo options hci_usb isoc=0 > /etc/modules.d/bluetooth # update-modules |
[edit] Suspend
# emerge hibernate-script 915resolution # rc-update add hibernate-cleanup boot
[edit] Software suspend
Enable software suspend or suspend2 in kernel. The problem is that when the laptop comes out of software suspend the wireless interface stop working. Perform the following configuration if you are not using ndiswrapper:
| File: /etc/hibernate/common.conf (Native bcm43xx) |
Distribution gentoo LoadModules auto GentooModulesAutoload yes |
If you are using ndiswrapper your common.conf is a bit different.
| File: /etc/hibernate/common.conf (ndiswrapper) |
Distribution gentoo LoadModules button |
| Note: GentooModulesAutoload + ndiswrapper breaks resuming the 915 driver, so if you find a module that doesn't resume correctly, append it to the LoadModules line |
If you are using Intel 3945 wireless card, add:
| File: /etc/hibernate/common.conf (ipw3945) |
UnloadModules ipw3945 DownInterfaces eth1 # UpInterfaces auto StopServices ipw3945d |
[edit] Suspend to RAM
The BIOS do not turn the LCD light after resume. Perform the following configuration:
# emerge vbetool
[edit] Lid
The BIOS turns off the LCD when lid is closed, but does not turn it back on.
# emerge acpid vbetool # rc-update add acpid default
| File: /etc/acpi/default.sh |
button)
lid)
oldvt=`fgconsole`
grep open /proc/acpi/button/lid/LID/state > \
/dev/null 2>&1 && \
( chvt 20; vbetool dpms on; vbetool vgastate on; chvt $oldvt )
;;
|
[edit] Modem
HSF Modem, no open source drivers, stupid company policy.
[edit] X11
[edit] Intel GMA 945GM
See this HowTo.
[edit] NVIDIA TwinView and external display/projector with Quadro NVS
If you use the Nvidia propriety drivers you can enable TwinView to clone the video signal to a projector or external display.
| File: /etc/X11/xorg.conf (Partial) |
Option "TwinView" "true"
Option "TwinViewOrientation" "Clone"
#Option "TwinViewOrientation" "Leftof" # Alternative orientation setting to extend display over second device
Option "MetaModes" "CRT-0:1024x768,DFP-0:1280x800;CRT-0:1024x768,DFP-0:1024x768"
|
The above example will provide you with two modes (for a WXGA display).
The first one will give you a 1280x800 resolution on your laptop and 1024x768 on your projector and therefore the projector will NOT show the entire desktop. To solve this you need to switch (eg. via krandrtray if you are using KDE) to mode two ("CRT-0:1024x768,DFP-0:1024x768") which will set both, laptop display and external display to 1024x768. If your projector supports widescreen WXGA you could add a third mode "CRT-0:1280x800,DFP-0:1280x800" and use this instead.
See the NVIDIA page for further information (setting refresh rate for external display etc.): http://us.download.nvidia.com/XFree86/Linux-x86/1.0-9742/README/appendix-g.html
[edit] Special Keys for KDE
On board volume keys.
# emerge kmilo
Create a file with the following:
| File: dell.xmodmap |
keycode 160 = XF86AudioMute keycode 174 = XF86AudioLowerVolume keycode 176 = XF86AudioRaiseVolume |
In your login script run:
$ xmodmap <file>
[edit] Smartcard Reader
# emerge pcsc-lite ccid # rc-update add pcscd default
The Oz776 has problems, see http://pcsclite.alioth.debian.org/ccid.html, you can modify /usr/lib/readers/usb/ifd-ccid.bundle/Contents/Info.plist:
| File: /usr/lib/readers/usb/ifd-ccid.bundle/Contents/Info.plist |
<key>ifdDriverOptions</key>
<string>0x0004</string>
|
To make it work.
[edit] Packages
app-crypt/ccid-1.1.0 app-laptop/laptop-mode-tools-1.31 net-wireless/bluez-utils-2.25-r1 net-wireless/ieee80211-1.2.15 net-wireless/ipw3945-1.1.3 media-sound/alsa-utils-1.0.13 sys-apps/915resolution-0.5.2 sys-apps/pcsc-lite-1.3.2 sys-apps/vbetool-0.7 sys-kernel/suspend2-sources-2.6.19-r1 sys-power/acpid-1.0.4-r3 sys-power/cpufreqd-2.2.1 sys-power/hibernate-script-1.94-r2 x11-base/xorg-x11-7.1 x11-drivers/xf86-video-i810-1.6.5
[edit] System Maintainance
[edit] Firmware Upgrade from DELL
See this HowTo.
