# Internal SD Card Reader: No device nodes created by udev

## hgerstung

Hi!

I just installed Gentoo on my new notebook (after short experiments with kubuntu and Suse Linux Enterprise Desktop, mea culpa) and after setting up network, graphics and wireless I still have to get Bluetooth and my SD Card reader up and running before I catch my plane to attend the IETF meeting in Prague next week.

My kernel seems to be OK and it looks like udev already loads the correct kernel modules, because when I insert a SD card, the kernel log says

```
tifm_7xx1: sd card detected in socket 1
```

and when I remove it, the kernel detects that as well.

Now, all I am missing is the creation of device nodes, I guess there are some udev rules missing. I am no udev specialist at all, therefore I am lost when it comes to write my own rules. When I insert a SD card, udevmonitor says this:

```
UEVENT[1174225255.550139] add      /devices/pci0000:00/0000:00:1e.0/0000:05:01.2/tifm_sd0:1 (tifm)

UDEV  [1174225255.551150] add      /devices/pci0000:00/0000:00:1e.0/0000:05:01.2/tifm_sd0:1 (tifm)

UEVENT[1174225255.573770] add      /devices/pci0000:00/0000:00:1e.0/0000:05:01.2/tifm_sd0:1/mmc0 (mmc_host)

UDEV  [1174225255.577023] add      /devices/pci0000:00/0000:00:1e.0/0000:05:01.2/tifm_sd0:1/mmc0 (mmc_host)

 
```

and when I remove it, I get

```
UEVENT[1174225290.632876] remove   /devices/pci0000:00/0000:00:1e.0/0000:05:01.2/tifm_sd0:1/mmc0 (mmc_host)

UEVENT[1174225290.632915] remove   /devices/pci0000:00/0000:00:1e.0/0000:05:01.2/tifm_sd0:1 (tifm)

UDEV  [1174225290.634002] remove   /devices/pci0000:00/0000:00:1e.0/0000:05:01.2/tifm_sd0:1/mmc0 (mmc_host)

UDEV  [1174225290.635264] remove   /devices/pci0000:00/0000:00:1e.0/0000:05:01.2/tifm_sd0:1 (tifm)

```

My lsmod looks like this:

```
tifm_7xx1               9600  0

tifm_sd                12040  0

mmc_core               23556  1 tifm_sd

ipw3945               187940  1

```

And my lspci looks like this:

```
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (rev 03)

00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03)

00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03)

00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)

00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02)

00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02)

00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02)

00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 (rev 02)

00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 (rev 02)

00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 (rev 02)

00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 (rev 02)

00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02)

00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)

00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)

00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller (rev 02)

00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)

02:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)

04:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8055 PCI-E Gigabit Ethernet Controller (rev 10)

05:01.0 CardBus bridge: Texas Instruments PCIxx12 Cardbus Controller

05:01.1 FireWire (IEEE 1394): Texas Instruments PCIxx12 OHCI Compliant IEEE 1394 Host Controller

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

05:01.3 Generic system peripheral [0805]: Texas Instruments PCIxx12 SDA Standard Compliant SD Host Controller

```

Any ideas how the udev rules have to look like in order to create the "mmcxxx" device nodes?

TIA,

 Heiko

[/quote]

----------

## erik258

Are you sure you have MMC, SCSI DISK, and BLUETOOTH support in the kernel, or relevant modules loaded?

----------

## hgerstung

Yes, as I wrote, the insertion or removal of the SD card (this is my current problem, I did not start checking for bluetooth) is detected by the kernel. All that is missing is the creation of the device nodes...

Regards,

Heiko

----------

## polygon7

Hi,

do you have acpi enabled (for example acpi=ht )?

I had nearly similar problem when I disabled acpi (noacpi nolacpi).

----------

## hgerstung

I already packed my things together, but I saw that the battery indicator worked fine and AFAIK this shows that acpi is working correctly (I know that I compiled ACPI into the kernel).

To me it looks like its a udev problem. The udevmonitor tool shows that udev is recognizing the insertion of the SD card without problems and repeatable. All that is missing is a rule that tells udev to create a corresponding device node. 

Maybe it would help to create the devicenodes manually, as a test. Can you tell me which major/minor numbers your mmc devices have (ls -l /dev/mmc* ?)

Best Regards,

Heiko

----------

## coplaniuk

I'm having a similar (possibly the same) problem.  My post is here.

Does anyone know the solution?  I'd very much like to get this resolved as well.

----------

## coplaniuk

Any resolution on this issue?

----------

## coplaniuk

*bing*

Solved.  Check out the very helpful thread:  https://forums.gentoo.org/viewtopic-p-4018831.html#4018831

----------

