Ubuntu 7.04 Feisty Fawn on Compaq C502US

Preface

The modem (Conexant HDAUDIO) supposedly works only with the proprietary HSF driver from Linuxant. S-Video is supposed to work after editing xorg.conf but I have not tested it yet. Everything else seems to work fine after some configuration steps which I will try to describe below. Most configuration changes require the corresponding service/kernel module to be restarted/reloaded. If you have a question or comment feel free to email me at .

Suspend

Both suspend to RAM and supend to disk work fine by default. However, if you use compiz, the system will not resume. There is a workaround which replaces compiz with metacity before suspending and restores it after resuming. Do not forget to make the scripts executable.

Wireless

This laptop comes with a bcm4311 chip identified by lspci as Broadcom Corporation Dell Wireless 1390 WLAN Mini-PCI Card (rev 01). It appears to work with the bcm43xx-mac80211 module and firmware extracted from new HP drivers. You need to download the XP driver for Compaq nc6140 and unpack it with cabextract.

$ sudo aptitude install cabextract
$ cabextract sp33008.exe

Remove the installed firmware first and extract the firmware from the downloaded driver as follows.

$ sudo rm /lib/firmware/bcm43xx*.fw
$ sudo aptitude install bcm43xx-fwcutter
$ sudo bcm43xx-fwcutter -w /lib/firmware/ bcmwl5.sys

Finally, disable loading bcm43xx by default and make bcm43xx-mac80211 load automatically upon boot-up.

$ echo blacklist bcm43xx | sudo tee -a /etc/modprobe.d/blacklist
$ echo bcm43xx-mac80211 | sudo tee -a /etc/modules

Under kernel 2.6.20-12 the wireless works fine when managed by /etc/network or NetworkManager. The latter uses the Gnome keyring to store WEP keys. If you want the keyring to be automatically unlocked upon login (i.e. - you do not want the keyring to ask you for a password when NetworkManager retrieves a WEP key), follow the instructions from a linuxlessons.de howto.

Touchpad

To stop the touchpad from producing lost sync errors and making the pointer jump randomly add i8042.nomux to the kernel options. Find the line in /boot/grub/menu.lst starting with # kopt and append i8042.nomux to it so that it looks like

# kopt=root=UUID=66fb0e5e-73ca-4cf9-aabd-65addf075b5e ro i8042.nomux

Then run

$ sudo update-grub

You can disable the synaptics driver by commenting out the following lines in /etc/X11/xorg.conf

#Section "InputDevice"
# Identifier "Synaptics Touchpad"
# Driver "synaptics"
# Option "SendCoreEvents" "true"
# Option "Device" "/dev/psaux"
# Option "Protocol" "auto-dev"
# Option "HorizScrollDelta" "0"
#EndSection
...
Section "ServerLayout"
...
# InputDevice "Synaptics Touchpad"
...
EndSection

To make tapping and scrolling work, specify the exps protocol for the psmouse kernel module.

$ echo options psmouse proto=exps | sudo tee -a /etc/modprobe.d/options

Sound

The sound card is an Intel HDA. With default settings plugging in headphones does not mute the speakers. The issue can be easily resolved by adding the model option to the sound module.

$ echo options snd-hda-intel model=laptop | sudo tee -a /etc/modprobe.d/alsa-base

Video

Install 915resolution to make the 1280x800 resolution available. It will automatically adjust the settings after restarting X.

$ sudo aptitude install 915resolution

I personally do not like how the fonts are rendered by default. I recommend following instructions from the Ubuntu Forums to install patched font rendering libraries and turning on LCD subpixel smoothing using the Gnome font configuration tool. You may also want to install MS fonts because they look particularly nice with these settings.

$ sudo aptitude install msttcorefonts