Did I missed the old times when installing Linux on a laptop was a bit tricky? I seems so since installing the latest Ubuntu (10.10 Maverick Meerkat) on a Dell Latitude E6410 (with Nvidia graphics card) was by no means a breeze.

Update 20100115: I summarized/updated all the hardware part in a separate article, check for updates.

Installation

All started when, full of confidence, I booted the usb stick with the Linux install expecting everything to work as a charm and ended up staring at a black screen. After a bit of research it seems the problem is related to the i915 (see this thread for full details). In short the solution has 3 steps:

  • install: press Esc when booting to go to the menu, select English then press F6 for extended options and select the nomodeset option. Optionally you can enter it by hand on the kernel parameters. This will start the livecd and the installer in a very low resolution. You can now install your system.
  • reboot: you need to edit the kernel parameters in grub to add the nomodeset option in order to be able to boot your newly installed os
  • persist: after you got in you need to install the nvidia proprietary drivers to fix the low resolution problem and change your grub parameters. Edit /etc/default/grub and change
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" to
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset"

then run: update-grub as root

The SD card problem

If you where expecting no more problems wait until you try to use the SD card. I guess I am too confident in expecting everything to work as I inserted a card and guess what? Nothing happened. Upon closer investigation this is dmesg log:

[ 7786.084972] mmc0: ADMA error
[ 7786.087026] mmc0: Got data interrupt 0x02000000 even though no data operation was in progress.
[ 7786.087032] sdhci: ============== REGISTER DUMP ==============
[ 7786.087041] sdhci: Sys addr: 0x00000000 | Version:  0x00000402
[ 7786.087050] sdhci: Blk size: 0x00007008 | Blk cnt:  0x00000001
[ 7786.087059] sdhci: Argument: 0x00000000 | Trn mode: 0x00000013
[ 7786.087068] sdhci: Present:  0x01ff0000 | Host ctl: 0x00000011
[ 7786.087077] sdhci: Power:    0x0000000f | Blk gap:  0x00000000
[ 7786.087085] sdhci: Wake-up:  0x00000000 | Clock:    0x00004007
[ 7786.087094] sdhci: Timeout:  0x00000009 | Int stat: 0x00000000
[ 7786.087103] sdhci: Int enab: 0x02ff00cb | Sig enab: 0x02ff00cb
[ 7786.087112] sdhci: AC12 err: 0x00000000 | Slot int: 0x00000000
[ 7786.087121] sdhci: Caps:     0x21e832b2 | Max curr: 0x00000040
[ 7786.087129] sdhci: ADMA Err: 0x00000001 | ADMA Ptr: 0x76903000
[ 7786.087133] sdhci: ===========================================
[ 7786.088161] mmc0: error -5 whilst initialising SD card

The solution is to create a .conf file in /etc/modprobe.d with the following options:

options sdhci debug_quirks=0x40

then either reboot or reload the modules:

rmmod sdhci_pci
rmmod sdhci
modprobe sdhci_pci

Now your sd card reader will work.

At least some good news

There is some good news after all. The bug which prevented the indicator-applet to work on vertical panels is now fixed so now I can get rid at least of all the horizontal panels. It will look ugly at first but if you apply the theme patch described here you will have a reasonable vertical panel. The clock applet does not seems to work since the shadow is drawn horizontally and the text is drawn vertically (bug).

32bit?

Installing 32bit packages such as oracle requires a special param (thanks to rodiq for the info):

sudo dpkg -i --force-architecture oracle-xe-universal_10.2.0.1-1.0_i386.deb

Other issues

  • suspend does not work. Update 20110101: works after upgrading to: 2.6.36-020636-generic
  • Fn-F8 does not work. Partial workaround is to use nvidia-settings each time to configure the monitors.

Comments:

harmony -

thank you for saving my evening, merry christmas


James Hogan -

Thank you SD reader now working Ubuntu 10.10 Dell e6410 Rich e822 Mary Christmas Thanks to you, now the family can enjoy all the pictures I have been taking Jim


Cyril -

Hi, Thank you so much, it’s working fine. I had really need this feature. Cheers, Cyril


Dave_K. -

Thanks very much for these tips! I got around the installation black screen problem by hooking up an external VGA monitor (no need to do the grub change).


Pete -

Good post, thanks for the MMC card tip, this works for me but when I reboot, it doesn’t automatically recognise the SD Card. I have to load the 3 modules to get it to be recognised after I have seated the card. Do you know any way to get this to recognise the card automatically? Dmesg doesnt dump now, it just says “error -110 whilst initialising SD card”


Nathaniel -

Awesome!! Thanks for an excellent and concise post.


Milton -

Thx a lot make my life easier.


Gerry -

The FN-F8 remote display is a huge deal with me since I use a large remote monitor when I’m not on the road. Seems like much of the BIOS control is wrapped into their Dell ControlPoint software and hot-key combinations to control video/monitor output are enabled in windows only. Nvidia-settings for me has been a poor workaround. I have enough Dell frustrations with my E6510 that I’m looking at a Lenovo W520.


Riaan -

To get the SD card reader to work on my Latitude e6420 I had to do the above as well as: sudo modprobe -r firewire_ohci I guess this is technically a workaround, but given I never use the 1394 firewire port….I can live with it See: http://ubuntuforums.org/archive/index.php/t-1743778.html