Ubuntu GNU/Linux on Dell XPS M1330

November 25th, 2007

Here are some notes from my installation of Ubuntu Gutsy 7.10 on Dell XPS M1330.

TuxMobil - Linux on Laptops, Notebooks, PDAs and Mobile Phones

CPU

Dual core processor correctly recognized, frequency scaling works ok except after suspending to memory. When resuming, the second core runs always at the maximum frequency.

You can read the temperature of each core by loading the coretemp kernel module and run:

cat /sys/devices/platform/coretemp.?/temp1_input

Remember to add coretemp to /etc/modules .

RAM

Nothing to say here.

Graphic card

My laptop is equipped with a GeForce 8400M GS card.

Install nvidia-glx-new, nvidia-kernel-common, linux-restricted-modules .

Ubuntu recognized the GeForce without any intervention. 3D works perfectly (tested with armagetron).

Run nvidia-settings to tune the parameters of the graphic card.

strawks reports that users with Intel GM965 Graphic Card experience stability problems under Xorg (see https://bugs.freedesktop.org/show_bug.cgi?id=11847)The external VGA port is almost unusable: when you plug the power adapter, some fuzzy lines appear on the external VGA screen/projector. Thanks Dell for putting the power port next to the VGA port. In the beginning I thought my unit was the only defective one, but a quick search on Google showed up a lot of people who experience the same problem.

TBD: test HDMI output
Hard drive

Make sure the SATA controller in the BIOS is set to AHCI. Ubuntu has no problem to recognize the controller and the hard drive. I also decided to enable the ‘quiet mode’ for the hard drive in the BIOS at the price of some performance (or so the manual says). Output of hdparm -t -T /dev/sda:

/dev/sda:
Timing cached reads: 7276 MB in 1.99 seconds = 3648.61 MB/sec
Timing buffered disk reads: 160 MB in 3.02 seconds = 53.06 MB/sec

Touchpad

Works out of the box. Typical features found on Synaptics touchpad (i.e. scrolling, double tap) are enabled by default.

Wireless

My laptop is equipped with an Intel PRO/Wireless 3945ABG. It works by default with ipw3945 which is part of linux-ubuntu-modules-2.6.22-14-generic package. Driver is rock solid.

Packet injection is available through the experimental module ipwraw. This one allows raw packet Tx/Rx with the Intel 3945ABG adapter, it’s raw mode only and can’t be used for normal connections to the Internet. Somebody at http://homepages.tu-darmstadt.de/~p_larbig/wlan/ added wireless extensions to this driver and made it work with aircrack-ng.

Jester de Jong reports that his laptop is equipped with Intel PRO/Wireless 4965 AGN and it works out of the box too with Ubuntu 7.10, but not on N-speed. The maximum speed he can get so far is 54 Mbit/s. Apparently for now there is no driver for Linux that supports N-speed (300Mbit/s).

Ethernet

Supported by the tg3 kernel module. Works out of the box.

Firewire

Works.

Hot keys

Hot keys for changing the volume, reproducing media, ejecting dvd, changing brightness all work out of the box.

Sound

This laptop is equipped with an Intel HDA audio with a Sigmatel STAC9228 codec. Output works fine by default, but the integrated digital microphone does not.

A patch is available on Ubuntu’s bug tracking system and some nice guy at Ubuntu generated an unofficial kernel module which already contains the patch.

Download http://people.ubuntu.com/~rtg/linux-backports-modules-2.6.22-14-generic_2.6.22-14.11UNRELEASED_i386.deb and install it with:

dpkg -i ./linux-backports-modules-2.6.22-14-generic_2.6.22-14.11UNRELEASED_i386.deb

Reboot.

After installing the package open a shell as root and run alsamixer:

  • Go under Digital Input Source and select Digital Mic 1 instead of Analog Inputs
  • Press F4 to change the view to Capture, then crank up the volume of Capture 1, Capture 2 and Digital
  • Press ESC to exit alsamixer

Webcam

If you have a WLED screen (like me), you get a 0.3mpx webcam. It works with all V4L2 compatible programs after installing latest linux-uvc. Here are the steps I followed:

  • apt-get install build-essentials
  • svn checkout svn://svn.berlios.de/linux-uvc/linux-uvc/trunk linux-uvc
  • cd linux-uvc
  • make install
  • modprobe uvcvideo
  • Remember to add uvcvideo to /etc/modules

If you want to make video calls using Skype, you must install Skype 2.0 beta. Works perfectly for me.

Jester de Jong reports that this webcam worked out of the box for him with the uvcvideo driver included in Ubuntu 7.10.

Feedback on the 2mbpx webcam which ships with the CCFL screen is welcome.

Multiple card reader

Secure Digital cards can be accessed out of the box. The SD reader is supported by the sdhci module which ships with the stock kernel.

Controlling fan speed

Install the i8kutils package and load the i8k module with:

modprobe i8k force=1

You can control the fan speed by running i8kmon and see the current temperature and fan speed by doing:

cat /proc/i8k

which will return in order:

  1. BIOS version
  2. serial number
  3. CPU temperature
  4. fan status
  5. fan rotation speed (only on some models)
  6. ac power status
  7. volume buttons status (not the multimedia buttons)

External USB modem

TBD

Bluetooth

Works out of the box. Install gnome-bluetooth, bluez-gnome and gnome-vfs-obexftp if you want to be able to navigate inside the memory of your mobile phone (it must support Obex file transfers, almost every mobile does nowadays) using nautilus.

To associate a mobile with your laptop, search for the laptop from the mobile, try to connect to it and enter a PIN. When a connection is attempted, the laptop will prompt you for the secret PIN that you entered on your mobile.

To send files from mobile to laptop:

Run Applications / Accessory / Bluetooth File Sharing

A new icon will appear in the tray bar. When a file is sent to the laptop, a prompt will appear.

To send files from laptop to mobile:

Open nautilus and right click on the file, choose ‘Send to…’ and choose Bluetooth (OBEX Push) in the drop-down menu.

TBD: GPRS/UMTS connections via Bluetooth

Fingerprint reader

If your Dell XPS m1330 has a fingerprint reader, install the thinkfinger (http://thinkfinger.sourceforge.net/) package. A nice howto for Ubuntu with repositories and step-by-step instructions is available at https://wiki.ubuntu.com/ThinkFinger .

Misc: battery

My laptop is equipped with a 85 WHr 9-Cell Li-Ion battery (the largest available, at least at the time I placed the order).

The battery doesn’t follow the flat shape of the laptop. It provides an alternative base for the bottom of the rear of the laptop and slightly lifts the rear part up. This way the keyboard is gently inclined and very comfortable to use. The downside of this is that you lose stability when holding the laptop on your lap (!) and after some time it starts to hurt your legs.

So you face the dilemma: why would you want to have a longer battery life if this comes at the price of hurting your legs when travelling? Why would you need to have a bigger battery just to keep the keyboard inclined when sitting at the desk, where you don’t need battery power? :)

The laptop can run on battery power for about 4 hours / 4 hours and 20 mins with WiFi and Bluetooth disabled.

The battery life goes down to about 3 hours / 3 hours and 20 mins with WiFi and Bluetooth enabled.

The screen brightness doesn’t seem to make much difference on power consumption, this is probably because of the White Led LCD screen. If your laptop has a traditional CCL LCD screen, things could be different. Like always, when talking about battery life YMMV.

Misc: suggestions for saving power

These are some generic suggestions that will work with most laptops, not only Dell XPS m1330.

Add options usbcore autosuspend=1 to /etc/modprobe.d/options

Run /usr/bin/hal-disable-polling –device /dev/scd0 to allow the CD/DVD rom to spin down after a while.

Add

  • vm.dirty_writeback_centisecs=1500
  • vm.laptop_mode=5

to /etc/sysctl.conf .

Add /sbin/iwpriv eth1 set_power 5 to /etc/rc.local and make sure that it gets executed at boot time.

Misc: my sources.list

deb http://it.archive.ubuntu.com/ubuntu/ gutsy main restricted
deb http://it.archive.ubuntu.com/ubuntu/ gutsy-updates main restricted
deb http://it.archive.ubuntu.com/ubuntu/ gutsy universe
deb http://it.archive.ubuntu.com/ubuntu/ gutsy-updates universe
deb http://it.archive.ubuntu.com/ubuntu/ gutsy multiverse
deb http://it.archive.ubuntu.com/ubuntu/ gutsy-updates multiverse
deb http://it.archive.ubuntu.com/ubuntu/ gutsy-backports main restricted universe multiverse
deb http://archive.canonical.com/ubuntu gutsy partner
deb http://security.ubuntu.com/ubuntu gutsy-security main restricted
deb http://security.ubuntu.com/ubuntu gutsy-security universe
deb http://security.ubuntu.com/ubuntu gutsy-security multiverse

# skype and picasa

deb http://download.skype.com/linux/repos/debian/ stable non-free
deb http://dl.google.com/linux/deb/ stable non-free

Misc: output of lspci

00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 0c)
00:01.0 PCI bridge: Intel Corporation Mobile PM965/GM965/GL960 PCI Express Root Port (rev 0c)
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Contoller #4 (rev 02)
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 02)
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 02)
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 02)
00:1c.3 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 4 (rev 02)
00:1c.5 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 6 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f2)
00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 02)
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 02)
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
03:01.0 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 05)
03:01.1 Generic system peripheral [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 22)
03:01.2 System peripheral: Ricoh Co Ltd R5C843 MMC Host Controller (rev 12)
03:01.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 12)
03:01.4 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev 12)
09:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5906M Fast Ethernet PCI Express (rev 02)
0c:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)

Credits

Kudos to Philip Langdale who started this madness on his blog at http://intr.overt.org/blog/?page_id=56 with an article on how to run Slackware on Dell XPS m1330.

Contacts

If you have any feedback, feel free to contact me.

Share

Add a comment

You must be logged in to post a comment.