Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD) and OpenSUSE 11.4

UPDATE: There is some strange lag while copping files from or to the SD card!

I recently reinstalled my laptop (Acer Extensa 5620z) with OpenSUSE 11.4. Everything worked out of the box, (which is impressive) except the card reader.

If you look at /var/log/messages when you insert a card, you will see something like this:

tifm_core: MMC/SD card detected in socket 0:1

It means that the kernel has detected your card but it don’t think it’s memory card or storage device. Here the setpci command comes handy.

NOTE: You need to be root in order to preform the steps required

1. List your devices with lspci and find your card reader entry:

0f:06.2 Mass storage controller: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD)

Notice the first colum 0f:06.2. This is your device ID, you will need it later.

2. Execute the following command:
Replace 0f:06.2 with your device ID!

setpci -s 0f:06.2 4c.b=0x02

Your card reader should work now. In order to make this change permanent, you may place the command from step 2 in /etc/rc.d/after.local.

P.S: Here is my laptop Smolt profile.