Ubuntu 10.04 64 bit on Dell Lattitude E6410: Failed to read MMC card

Bug #605043 reported by Walter Garcia-Fontes
130
This bug affects 28 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Undecided
Unassigned
linux-2.6 (Debian)
Invalid
Undecided
Unassigned

Bug Description

MMC/SD cards cannot be read in the built-in card reader that comes with the DELL Latitude e6410. The hardware seems to be:

[ 8.637234] mmc0: Unknown controller version (2). You may experience problems.
[ 8.637347] Registered led device: mmc0::
[ 8.637387] mmc0: SDHCI controller on PCI [0000:03:00.0] using ADMA

The messages produced by inserting a card are attached in a separate text file. The card is not mounted when inserted.

ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: linux-image-2.6.32-23-generic 2.6.32-23.37
Regression: No
Reproducible: Yes
ProcVersionSignature: Ubuntu 2.6.32-23.37-generic 2.6.32.15+drm33.5
Uname: Linux 2.6.32-23-generic x86_64
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.21.
Architecture: amd64
ArecordDevices:
 **** List of CAPTURE Hardware Devices ****
 card 0: Intel [HDA Intel], device 0: STAC92xx Analog [STAC92xx Analog]
   Subdevices: 2/2
   Subdevice #0: subdevice #0
   Subdevice #1: subdevice #1
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: wgarcia 1606 F.... pulseaudio
CRDA: Error: [Errno 2] No such file or directory
Card0.Amixer.info:
 Card hw:0 'Intel'/'HDA Intel at 0xf6960000 irq 22'
   Mixer name : 'Intel G45 DEVIBX'
   Components : 'HDA:111d76d5,1028040a,00100104 HDA:80862804,80860101,00100000'
   Controls : 22
   Simple ctrls : 13
Date: Tue Jul 13 16:46:40 2010
HibernationDevice: RESUME=UUID=77c0f7c3-5586-4c5e-85c8-51b0cdc8a1ca
InstallationMedia: Ubuntu 10.04 LTS "Lucid Lynx" - Release amd64 (20100427.1)
MachineType: Dell Inc. Latitude E6410
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.32-23-generic root=UUID=fa99ae24-989c-400c-83e8-103ab0a28c85 ro quiet splash
ProcEnviron:
 LANG=en_US.utf8
 SHELL=/bin/tcsh
RelatedPackageVersions: linux-firmware 1.34.1
SourcePackage: linux
dmi.bios.date: 05/28/2010
dmi.bios.vendor: Dell Inc.
dmi.bios.version: A03
dmi.board.name: 0667CC
dmi.board.vendor: Dell Inc.
dmi.board.version: A00
dmi.chassis.type: 9
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvrA03:bd05/28/2010:svnDellInc.:pnLatitudeE6410:pvr0001:rvnDellInc.:rn0667CC:rvrA00:cvnDellInc.:ct9:cvr:
dmi.product.name: Latitude E6410
dmi.product.version: 0001
dmi.sys.vendor: Dell Inc.

Revision history for this message
Walter Garcia-Fontes (walter-garcia) wrote :
Revision history for this message
Jeremy Foshee (jeremyfoshee) wrote :

Hi Walter,

If you could also please test the latest upstream kernel available that would be great. It will allow additional upstream developers to examine the issue. Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Once you've tested the upstream kernel, please remove the 'needs-upstream-testing' tag. This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs-upstream-testing' text. Please let us know your results.

Thanks in advance.

    [This is an automated message. Apologies if it has reached you inappropriately; please just reply to this message indicating so.]

tags: added: kj-triage
Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Walter Garcia-Fontes (walter-garcia) wrote :

I tried the following kernel:

uname -a
Linux delle6410 2.6.35-020635rc1-generic #020635rc1 SMP Tue Jun 1 17:27:30 UTC 2010 x86_64 GNU/Linux

When I put the SD card into the card reader the screen gets blank and the computer freezes completely. Three small lock-type lights that are in above the keyboard start blinking but the computer has to be restarted.

This does not happen with the stock kernel , it just ignores the card completely but it does not freeze.

dmesg shows the following:

dmesg | grep mmc
[ 1.839650] sr0: scsi3-mmc drive: 24x/24x writer dvd-ram cd/rw xa/form2 cdda tray
[ 15.709311] mmc0: Unknown controller version (2). You may experience problems.
[ 15.709422] Registered led device: mmc0::
[ 15.709457] mmc0: SDHCI controller on PCI [0000:03:00.0] using ADMA

description: updated
tags: removed: amd64 apport-bug kj-triage lucid needs-upstream-testing
Revision history for this message
Walter Garcia-Fontes (walter-garcia) wrote :

I tried a second time with the same kernel, and now it dit not freeze. The only reaction to inserting a SD card is the following
message (dmesg):

[ 939.729059] mmc0: error -5 whilst initialising SD card

Revision history for this message
John Steele Scott (toojays) wrote :

I can confirm this on a Latitude E6510 with 2.6.35-020635rc5-generic from the mainline kernel repo. When I insert an SD card, I get the following in my dmesg:

[10620.483522] mmc0: ADMA error
[10620.485542] mmc0: Got data interrupt 0x02000000 even though no data operation was in progress.
[10620.485547] sdhci: ============== REGISTER DUMP ==============
[10620.485553] sdhci: Sys addr: 0x00000000 | Version: 0x00000402
[10620.485559] sdhci: Blk size: 0x00007008 | Blk cnt: 0x00000001
[10620.485565] sdhci: Argument: 0x00000000 | Trn mode: 0x00000013
[10620.485571] sdhci: Present: 0x01ff0000 | Host ctl: 0x00000011
[10620.485576] sdhci: Power: 0x0000000f | Blk gap: 0x00000000
[10620.485582] sdhci: Wake-up: 0x00000000 | Clock: 0x00004007
[10620.485588] sdhci: Timeout: 0x0000000a | Int stat: 0x00000000
[10620.485594] sdhci: Int enab: 0x02ff00cb | Sig enab: 0x02ff00cb
[10620.485600] sdhci: AC12 err: 0x00000000 | Slot int: 0x00000000
[10620.485606] sdhci: Caps: 0x21e832b2 | Max curr: 0x00000040
[10620.485612] sdhci: ADMA Err: 0x00000001 | ADMA Ptr: 0x0236bb2c
[10620.485614] sdhci: ===========================================
[10620.486639] mmc0: error -5 whilst initialising SD card

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
gian (storti) wrote :

Same here (dell E6410, Ubuntu 10.04, kernel 2.6.32-24-generic, x86_64)
....
Aug 2 16:26:14 venera kernel: [ 6.662519] mmc0: Unknown controller version (2). You may experience problems.
Aug 2 16:26:14 venera kernel: [ 6.662592] sdhci-pci 0000:04:00.0: setting latency timer to 64
Aug 2 16:26:14 venera kernel: [ 6.662640] Registered led device: mmc0::
Aug 2 16:26:14 venera kernel: [ 6.662673] mmc0: SDHCI controller on PCI [0000:04:00.0] using ADMA
Aug 2 16:26:14 venera kernel: [ 6.667146] Bluetooth: Core ver 2.15
....

and then
....
Aug 6 22:57:26 venera kernel: [ 23.836810] mmc0: Unexpected interrupt 0x02000000.
Aug 6 22:57:26 venera kernel: [ 23.836811] sdhci: ============== REGISTER DUMP ==============
Aug 6 22:57:26 venera kernel: [ 23.836817] sdhci: Sys addr: 0x00000000 | Version: 0x00000402
Aug 6 22:57:26 venera kernel: [ 23.836822] sdhci: Blk size: 0x00007008 | Blk cnt: 0x00000001
Aug 6 22:57:26 venera kernel: [ 23.836828] sdhci: Argument: 0x00000000 | Trn mode: 0x00000013
Aug 6 22:57:26 venera kernel: [ 23.836834] sdhci: Present: 0x01ff0202 | Host ctl: 0x00000011
Aug 6 22:57:26 venera kernel: [ 23.836840] sdhci: Power: 0x0000000f | Blk gap: 0x00000000
Aug 6 22:57:26 venera kernel: [ 23.836845] sdhci: Wake-up: 0x00000000 | Clock: 0x00004007
Aug 6 22:57:26 venera kernel: [ 23.836851] sdhci: Timeout: 0x0000000a | Int stat: 0x02008000
Aug 6 22:57:26 venera kernel: [ 23.836857] sdhci: Int enab: 0x02ff00cb | Sig enab: 0x02ff00cb
Aug 6 22:57:26 venera kernel: [ 23.836863] sdhci: AC12 err: 0x00000000 | Slot int: 0x00000001
Aug 6 22:57:26 venera kernel: [ 23.836869] sdhci: Caps: 0x21e832b2 | Max curr: 0x00000040
Aug 6 22:57:26 venera kernel: [ 23.836875] sdhci: ADMA Err: 0x00000001 | ADMA Ptr: 0x200b654c
Aug 6 22:57:26 venera kernel: [ 23.836876] sdhci: ===========================================
Aug 6 22:57:26 venera kernel: [ 23.836884] mmc0: Unexpected interrupt 0x02000000.
Aug 6 22:57:26 venera kernel: [ 23.836885] sdhci: ============== REGISTER DUMP ==============
.....
repeated a llot of times, until:
Aug 6 22:57:36 venera kernel: [ 33.779940] mmc0: error -110 whilst initialising SD card

Revision history for this message
John Steele Scott (toojays) wrote :

Disabling ADMA gets around this issue.

I've attached a modprobe configuration file which does this. After creating this file into /etc/modprobe.d and reloading the sdhci kernel modules (rmmod sdhci_pci and sdhci, then modprobe sdhci_pci), I can use the card reader on my E6510.

Revision history for this message
invitu (invitu) wrote :

It works for me (E6410/Ubuntu 10.04 32bits 2.6.32-24-generic #39-Ubuntu SMP), thanks John

Revision history for this message
Brice Goglin (bgoglin-free) wrote :

Workd on Debian 2.6.34-1, thanks. But doesn't seem to work anymore on 2.6.35. I am trying to prepare a patch to automatically quirk this.

Revision history for this message
Walter Garcia-Fontes (walter-garcia) wrote :

The workaround suggested by John in #7 works on my system (Dell Latitude E6410, Intel HD graphics, 2.6.32-24-generic #39-Ubuntu SMP Wed Jul 28 05:14:15 UTC 2010 x86_64 GNU/Linux kernel).

A small correction: it is "sdhci-pci" and not "sdhci_pci". I called the "conf" file "latitude-e6410-cardreader.conf", does this file get read when the "sdhci-pci" module is loaded?

Revision history for this message
Anthony (ajmcbuntu) wrote :

Thanks John!

Dell Latitude E6510
Ubuntu 10.04 64 bit
SD Card reader now works!

previously the logging would show the same
error -110...while initialising.

 I also boot verbosely and I would get the same mmc warning during boot up.

mmc0: Unknown controller version (2). You may experience problems.

Again, Thank you.

Revision history for this message
Morten Brekk (mbrekk) wrote :

The fix in #7 also worked for me.
[ 2.234655] sr0: scsi3-mmc drive: 24x/24x writer dvd-ram cd/rw xa/form2 cdda tray
[ 10.768821] Registered led device: mmc0::
[ 10.768883] mmc0: SDHCI controller on PCI [0000:08:00.1] using DMA
Linux mbr-laptop 2.6.32-24-generic #39-Ubuntu SMP Wed Jul 28 05:14:15 UTC 2010 x86_64 GNU/Linux

ACER Aspire 8943G

Revision history for this message
Karol Szkudlarek (karol-mikronika) wrote :

Hi!

This (#7) fix also reads my sd card on Dell Latitude E6510 on Karmic Koala 9.10

$ uname -r
2.6.31-22-generic-pae

Revision history for this message
gian (storti) wrote :

Fix at #7 works also on my Latitude E6410 (even if in the syslog the message "mmc0: Unknown controller version (2). You may experience problems." still appears).

Revision history for this message
gian (storti) wrote :

ooops.... forgot to say that I'm using a 2.6.35 kernel

uname -a

Linux venera 2.6.35-020635rc1-generic #020635rc1 SMP Tue Jun 1 17:27:30 UTC 2010 x86_64 GNU/Linux

Revision history for this message
Walter Garcia-Fontes (walter-garcia) wrote :

Just installed Maverick Release Candidate:
Linux delle6410 2.6.35-22-generic #33-Ubuntu SMP Sun Sep 19 20:32:27 UTC 2010 x86_64 GNU/Linux

and the MMC card is read perfectly without the workaround in #7. Great job!

Revision history for this message
Jon (shakataganai) wrote :

I have this issue on Maverick RC on a Dell Precision M4500. Straight install, no upgrade. I tried the fix listed in #7, does work.

root@delltestm4500-laptop:~# uname -r
2.6.35-22-generic

From /var/log/syslog:
Oct 6 22:57:19 delltestm4500-laptop kernel: [ 5183.316204] mmc0: ADMA error
Oct 6 22:57:19 delltestm4500-laptop kernel: [ 5183.319242] mmc0: error -5 whilst initialising SD card

Revision history for this message
go4linux (ubuntu-desole) wrote :

Had the same problem on a Dell Precision M4500. #7 did work, but I had to do something more. Look at comment #31 here:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/642421

Revision history for this message
go4linux (ubuntu-desole) wrote :

Forgot to mention the kernel: 2.6.35-22, 64 bit

Revision history for this message
Odin Hørthe Omdal (velmont) wrote :

Doesn't work. Dell Precision M4500. 2.6.35-22-generic 64 bit.

#7 works.

Revision history for this message
Odin Hørthe Omdal (velmont) wrote :

This was Ubuntu 10.10.

The fix does not apply across restarts, I have to rmmod and modprobe for it to work again. Very time consuming and not something I could teach my mom.

Revision history for this message
Henry Zeringue (henry-zeringue) wrote :

Computer: Dell Latitude e6410
OS: Ubuntu 10.10 32-bit
Kernel: Ubuntu 2.6.35-23-generic

This fix works perfectly for me. Regarding message #21, I added the rmmod/modprobe commands to /etc/rc.local so they're run at the end of booting and the SDHC card appears on my desktop when I log in!

Revision history for this message
Brant Boehmann (brant-boehmann) wrote :

Computer: Dell Latitude e6510
OS: Ubuntu 10.10 64-bit
Kernel: Ubuntu 2.6.35-23-generic

This fix works for me as well. I did have to add the rmmod/modprobe commands to /etc/rc.local which is annoying.
Why isn't the /etc/modprobe.d/latitude-e6510-cardreader.conf loaded the first time the sdhci module is loaded?
It seems silly to have it load at startup then rmmod and modprobe using /etc/rc.local.

Does anyone know a way to avoid having to add this to /etc/rc,local?

Revision history for this message
John Steele Scott (toojays) wrote :

Hmm, it works across reboots for me, without adding anything to /etc/rc.local. I am back on Ubuntu 10.04 though.

One thought is that perhaps you need to update your initramfs to make your config change apply to the module which is loaded during boot. See if running "sudo update-initramfs -u" makes it apply across reboots without having to reload the module after boot.

Revision history for this message
Brant Boehmann (brant-boehmann) wrote :

Well. It works for me across reboots now, but I can't think of what I might have done to cause it to work across reboots. Thanks for the initramfs tip. That taught me something new, but it was not needed in this case.

Revision history for this message
cacula (cacula) wrote :

@John Steele Scott: thanks, your thought is correct. now the patch is persistent :-)

Revision history for this message
Manolouxten (sifakis-manolis) wrote :

Dell Latitude E5510
Ubuntu 10.10 with kernel 2.6.35-23-generic

Solution proposed by John #7 worked!!!

i also did "sudo update-initramfs -u" proposed by John #24
it works perfectly now!!
thanks a lot :)

Revision history for this message
Thiago Moreira (timba) (tmoreira2020) wrote :

Same problem here with 2.6.35-25-generic #44-Ubuntu SMP Fri Jan 21 17:40:44 UTC 2011 x86_64 GNU/Linux and Latitude e6510. Fixed by comment #7 and "sudo update-initramfs -u"

Revision history for this message
Mikael Bergqvist (mikaelb) wrote :

@John #7, Thanks, that helped me, toghether with the update to initramfs

Dell e6410, Kubuntu 10.10 (2.6.35-28-generic)

Revision history for this message
Mikael Bergqvist (mikaelb) wrote :

Forgot to add that it works out of the box with the 11.04 Beta1 on the same machine.

Changed in linux-2.6 (Debian):
status: New → Invalid
Revision history for this message
dstaubsauger (dickerstaubsauger) wrote :

I'm using Natty 64Bit on a Dell Inspiron 6400 and according to lspci my card reader is

i used the config file from #7 (John), recompiled my kernel with the option "CONFIG_MMC_RICOH_MMC" disabled (sorry i cant find where i got that from) and ran "sudo update-initramfs -u" as suggested by #28 (timba). Now it works.

Revision history for this message
Walter Garcia-Fontes (walter-garcia) wrote :

This is working perfectly in my hardware. If any other user is affected, please reopen with the appropriate apport information for the specific hardware.

Changed in linux (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.