tifm sd card reader does not mount

Bug #91429 reported by Curtis Hovey
4
Affects Status Importance Assigned to Milestone
linux-source-2.6.20 (Ubuntu)
Fix Released
Medium
Unassigned
udev (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

Binary package hint: hal

The TI card reader fails to mount when a card is inserted:

dmesg
[ 1446.168519] tifm_7xx1: xd card detected in socket 2
[ 1446.331490] tifm_7xx1: demand removing card from socket 2
[ 1446.402281] tifm_7xx1: sd card detected in socket 3
[ 1496.813089] tifm_7xx1: demand removing card from socket 3

^ note that this is a sd card, and I inserted it then removed it.
ALSO NOTE that the xd messages appeared on insert.

lsmod | grep tifm
tifm_sd 14088 0
mmc_core 31752 2 tifm_sd,sdhci
tifm_7xx1 11520 0
tifm_core 11520 2 tifm_sd,tifm_7xx1

Revision history for this message
Curtis Hovey (sinzui) wrote :

This is a kernel/initialization problem.
$ sudo setpci -s <busid> 4c.b=0x02
enabled the card reader for me.
This issue relates to
https://blueprints.beta.launchpad.net/ubuntu/+spec/enable-ti-card-reader

Revision history for this message
Curtis Hovey (sinzui) wrote :

re-assigned to module-init-tools. This may be an initscripts issue. In general something need to wire the device to the driver like:
BUSID=`lspci | sed -e '/Texas Instruments.*FlashMedia/!D; s/ .*//;'`
setpci -s ${BUSID} 4c.b=0x02

Revision history for this message
Ben Collins (ben-collins) wrote :

Udev maybe?

Revision history for this message
Phillip Lougher (phillip-lougher) wrote :

This looks like a problem with the tifm_7xx1 driver.

This isn't a kernel/udev initialisation problem, the setpci hack

sudo setpci -s <busid> 4c.b=0x02

Sets the physical pins of the MMC card slot to the "Secure Digital Host Controller Interface" supported by the sdhci driver.

This works because most TI MMC card readers support two interfaces: the proprietary TI interface, and the generic "Secure Digital Host Controller Interface". Only one of these interfaces are connected to the physical pins of the MMC reader at any one time. Normally the physical pins are connected to the proprietary interface, which is supported by the tifm_sd driver.

This problem is the same as the bugs still reported by a couple of users after the tifm_sd driver was updated to fix bug 82680. There's a lot more information regarding this in the comments attached to that bug.

Changed in udev:
status: Unconfirmed → Rejected
Changed in linux-source-2.6.20:
assignee: nobody → ubuntu-kernel-team
importance: Undecided → Medium
status: Unconfirmed → Confirmed
Revision history for this message
Phillip Lougher (phillip-lougher) wrote :

It's worth mentioning that not all TI MMC chipsets have the sdhci capability. Therefore the setpci hack is not guaranteed to work in all cases.

Revision history for this message
Andrew Waldram (andrew-waldram) wrote :

the initial fix for this is to compile .8 of the tifm driver modules as (stated by the tifm developer) the stock kernel modules are buggy.

unfortunately ubuntu kernel headers are missing protocol.h from includes/linux/mmc also the kernel sources are too old to compile against cleanly (2.6.20.4 Vs 2.6.20.6)

when this is fixed the SD card will still not mount as there is no action from Hal for the event though the insertion event is noted

LP 52923 has more details on this bug and also the issues with SDHCI auto mounting

query how many 'medium' bugs reported for the same issue result in 1 critical bug ?? ;-)

at present count 12 bugs are about these issues.

Revision history for this message
Phillip Lougher (phillip-lougher) wrote :

As noted in bug 82680, the Feisty kernel has been updated to the .8 release of the driver. This fixed most problems raised, but unfortunately, not all problems.

Revision history for this message
Matheus Pacheco de Andrade (matheusp-andrade-deactivatedaccount) wrote :

My internal SD reader gives the lspci as:
06:04.2 Generic system peripheral [0805]: O2 Micro, Inc. Integrated MMC/SD Controller (rev 01)
06:04.3 Mass storage controller: O2 Micro, Inc. Integrated MS/xD Controller (rev 01)

It needed tifm_sd to be called manually and SD to be mounted manually.
It is now fixed in kernel 2.6.20-15 - automounting and all.

HOORRAY!

Revision history for this message
Phillip Lougher (phillip-lougher) wrote :

Automounting was broken by an update to the mmc-core, which didn't work correctly with hald. This has been fixed in the latest kernels.

Changed in linux-source-2.6.20:
status: Confirmed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote : Kernel team bugs

Per a decision made by the Ubuntu Kernel Team, bugs will longer be assigned to the ubuntu-kernel-team in Launchpad as part of the bug triage process. The ubuntu-kernel-team is being unassigned from this bug report. Refer to https://wiki.ubuntu.com/KernelTeamBugPolicies for more information. Thanks.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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