NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/57015: sdhc fails for Ricoh 5U823 controller



>Number:         57015
>Category:       kern
>Synopsis:       sdhc fails for Ricoh 5U823 controller
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Sep 17 12:40:00 +0000 2022
>Originator:     Michael van Elst
>Release:        NetBSD 9.99.99
>Organization:
	
>Environment:
	
	
System: NetBSD tazz 9.99.99 NetBSD 9.99.99 (TAZZ) #48: Sat Sep 17 11:58:06 UTC 2022 mlelstv@slowpoke:/scratch2/obj.amd64/scratch/netbsd-current/src/sys/arch/amd64/compile/TAZZ amd64
Architecture: x86_64
Machine: amd64
>Description:
The Ricoh 5U823 controller in a Thinkpad T420

[     1.005753] sdhc0 at pci4 dev 0 function 0: Ricoh 5U823 SD/MMC Controller (rev. 0x05)
[     1.005753] sdhc0: interrupting at ioapic0 pin 16
[     1.005753] sdhc0: SDHC 3.0, rev 0
[     1.005753] , caps <21ecc8b2/00000005>, SDMA, 200000 kHz, HS SDR50 DDR50 3.3V, re-tuning mode 1, 512 byte blocks

fails to access SD cards with

[   4.9500638] sdmmc0: sdmem_mem_send_scr: error = 60
[   4.9500638] sdmmc0: autoconfiguration error: SD_SEND_SCR send failed.
[   4.9500638] sdmmc0: autoconfiguration error: mem init failed
[   4.9500638] sdmmc0: autoconfiguration error: init failed

This works in netbsd-9.

Killing ADMA2 support in the driver like:

--- dev/sdmmc/sdhc.c    6 Feb 2022 15:52:20 -0000       1.115
+++ dev/sdmmc/sdhc.c    17 Sep 2022 12:06:52 -0000
@@ -415,7 +415,7 @@ sdhc_host_found(struct sdhc_softc *sc, b
             ISSET(caps, SDHC_DMA_SUPPORT)))) {
                SET(hp->flags, SHF_USE_DMA);
 
-               if (ISSET(caps, SDHC_ADMA2_SUPP)) {
+               if (0 && ISSET(caps, SDHC_ADMA2_SUPP)) {
                        SET(hp->flags, SHF_MODE_DMAEN);
                        /*
                         * 64-bit mode was present in the 2.00 spec, removed

makes it work again.

>How-To-Repeat:
Run -current on a Thinkpad T420.
>Fix:

>Unformatted:
 	
 	


Home | Main Index | Thread Index | Old Index