RFC: PCI SD host controller driver & mmc/mmcsd modules improvements

Lars Engels lars.engels at 0x20.net
Thu Nov 6 07:37:31 PST 2008


Quoting Alexander Motin <mav at FreeBSD.org>:

> Lars Engels wrote:
>> I just tried your latest version of mmc + sdhci but it does not detect
>> any SD Card inserted:
>>
>> sdhci0: <RICOH R5C822 SD> mem 0xe4003000-0xe40030ff irq 19 at device 6.3
>> on pci2
>>
>> Nothing happens when I insert a card.
>>
>> The hardware is:
>> sdhci0 at pci0:2:6:3:      class=0x080500 card=0x30c3103c chip=0x08221180
>> rev=0x20 hdr=0x00
>>     vendor     = 'Ricoh Company, Ltd.'
>>     device     = 'R5C832, R5C843 SDA Standard Compliant SD Host Controller'
>>     class      = base peripheral
>> none2 at pci0:2:6:4:       class=0x088000 card=0x30c3103c chip=0x08431180
>> rev=0x10 hdr=0x00
>>     vendor     = 'Ricoh Company, Ltd.'
>>     device     = 'unknown Ricoh MMC Host Controller'
>>     class      = base peripheral
>> none3 at pci0:2:6:5:       class=0x088000 card=0x30c3103c chip=0x05921180
>> rev=0x10 hdr=0x00
>>     vendor     = 'Ricoh Company, Ltd.'
>>     device     = '13871043 Ricoh Memory Stick Host Controller'
>>     class      = base peripheral
>> none4 at pci0:2:6:6:       class=0x088000 card=0x30c3103c chip=0x08521180
>> rev=0x10 hdr=0x00
>>     vendor     = 'Ricoh Company, Ltd.'
>>     device     = 'unknown Ricoh xD-Picture Card Host Controller'
>>     class      = base peripheral
>
> Looks like there is two MMC/SD controllers (first two devices) in your
> chip while only one is detected as SD host controller. This thread looks
> related to your problem:
> http://list.drzeus.cx/pipermail/sdhci-devel/2007-September/002023.html
>
> 1. You may try to tune PCI configuration registers referred in that post.
> 2. Or (just an idea) you may try to power down unsupported devices with
> setting hw.pci.do_power_nodriver=3 into the device.hints.
> 3. Or (it works fine for my ENE CB714 chip) you may try to add
> 0x08431180 chip ID into the list of supported SD controllers like it is
> done for 0x08221180. They may be compatible enough.
>
> If you try it, report please about results.

Alexander, thanks for the quick response!

1. How can I tune the PCI configuration? With pciconf -w or so?
2. Unfortunately the sysctl did not change a thing with regard to the  
Card reader.
3. I added the chip ID and the second device is now recognized as a  
sdhci device but still does not see any card inserted:

Nov  6 16:32:20 NB0117232 kernel: sdhci0: <RICOH R5C822 SD> mem  
0xe4003000-0xe40030ff irq 19 at device 6.3 on pci2
Nov  6 16:32:20 NB0117232 kernel: sdhci0: 1 slot(s) allocated
Nov  6 16:32:20 NB0117232 kernel: sdhci0: [ITHREAD]
Nov  6 16:32:20 NB0117232 kernel: sdhci1: <RICOH R5C843 SD> mem  
0xe4004000-0xe40040ff irq 19 at device 6.4 on pci2
Nov  6 16:32:20 NB0117232 kernel: sdhci1: Hardware doesn't specify  
base clock frequency.
Nov  6 16:32:20 NB0117232 kernel: sdhci1: Hardware doesn't specify  
timeout clock frequency.
Nov  6 16:32:20 NB0117232 kernel: sdhci1: Hardware doesn't report any  
support voltages.
Nov  6 16:32:20 NB0117232 kernel: sdhci1: 1 slot(s) allocated
Nov  6 16:32:20 NB0117232 kernel: sdhci1: [ITHREAD]
Nov  6 16:32:31 NB0117232 kernel: mmc0: <MMC/SD bus> on sdhci1

sdhci1 at pci0:2:6:4:      class=0x088000 card=0x30c3103c chip=0x08431180  
rev=0x10 hdr=0x00
     vendor     = 'Ricoh Company, Ltd.'
     device     = 'unknown Ricoh MMC Host Controller'
     class      = base peripheral



-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: Digitale PGP-Unterschrift
Url : http://lists.freebsd.org/pipermail/freebsd-arm/attachments/20081106/c845b6a5/attachment.pgp


More information about the freebsd-arm mailing list