+-----------------------------------------------------------------
|
| Mounting SD Card on TI PCIxx21 Integrated FlashMedia Controller
|
+-----------------------------------------------------------------


1. Finding the TI PCIxx21 PCI bus numbers

[root@...]# lspci -v
.....
02:06.3 Mass storage controller: Texas Instruments PCIxx21 Integrated FlashMedia Controller
        Subsystem: Hewlett-Packard Company NX6110/NC6120
        Flags: medium devsel, IRQ 22
        Memory at d0008000 (32-bit, non-prefetchable) [size=8K]
        Capabilities: [44] Power Management version 2

02:06.4 Class 0805: Texas Instruments PCI6411/6421/6611/6621/7411/7421/7611/7621 Secure Digital Controller
        Subsystem: Hewlett-Packard Company NX6110/NC6120
        Flags: bus master, medium devsel, latency 64, IRQ 22
        Memory at d000a000 (32-bit, non-prefetchable) [size=256]
        Memory at d000b000 (32-bit, non-prefetchable) [size=256]
        Memory at d000c000 (32-bit, non-prefetchable) [size=256]
        Capabilities: [80] Power Management version 2

02:06.5 Communication controller: Texas Instruments PCI6411/6421/6611/6621/7411/7421/7611/7621 Smart Card Controller
        Subsystem: Hewlett-Packard Company NX6110/NC6120
        Flags: medium devsel, IRQ 10
        Memory at d000d000 (32-bit, non-prefetchable) [size=4K]
        Memory at d000e000 (32-bit, non-prefetchable) [size=4K]
        Memory at d000f000 (32-bit, non-prefetchable) [size=4K]
        Memory at d0010000 (32-bit, non-prefetchable) [size=4K]
        Capabilities: [44] Power Management version 2
.....
[root@...]#


2. Selecting the apropriate bus number - the number of Integrated FlashMedia Controller

02:06.3 on my laptop. Used by setpci command.


3. Enabling SD interface of the TI PCXxx12 interface

[root@...]# modprobe -r sdhci
[root@...]# modprobe -r mmc_block
[root@...]# setpci -s 02:06.3 4c=0x22
[root@...]# modprobe sdhci
[root@...]# modprobe mmc_block

Better way is to add these commands to /etc/rc.local or to run as a script.


4. Inserting a SD card... showing example of /var/log/messages:

... kernel: sdhci: Secure Digital Host Controller Interface driver, 0.12
... kernel: sdhci: Copyright(c) Pierre Ossman
... kernel: sdhci: SDHCI controller found at 0000:02:06.4 [104c:8034] (rev 0)
... kernel: ACPI: PCI Interrupt 0000:02:06.4[D] -> GSI 20 (level, low) -> IRQ 22
... kernel: mmc0: SDHCI at 0xd000a000 irq 22 DMA
... kernel: mmc1: SDHCI at 0xd000b000 irq 22 DMA
... kernel: mmc2: SDHCI at 0xd000c000 irq 22 DMA
... kernel: mmcblk0: mmc2:fdec SD512 500224KiB
... kernel:  mmcblk0: p1
... kernel: SELinux: initialized (dev mmcblk0p1, type vfat), uses genfs_contexts
... hald: mounted /dev/mmcblk0p1 on behalf of uid 500


5. Unmounting the SD card... showing example of /var/log/messages:
... hald: unmounted /dev/mmcblk0p1 from '/media/disk' on behalf of uid 500


+-----------------------------------------------------------------
|
| For more informations look at: Linux driver for the SDHCI controller and more on drzeus.cx
|
| Based on Mikkel L. Ellertson script from Fedora forum
|



Enjoy:-)