Page MenuHomeFreeBSD

Enable high-speed on the card before increasing frequency on the controller
ClosedPublic

Authored by kibab on May 25 2018, 9:46 AM.
Referenced Files
F151118335: D15568.id43332.diff
Mon, Apr 6, 5:07 AM
Unknown Object (File)
Fri, Apr 3, 10:53 AM
Unknown Object (File)
Fri, Apr 3, 3:45 AM
Unknown Object (File)
Wed, Mar 25, 7:10 AM
Unknown Object (File)
Sat, Mar 21, 9:46 AM
Unknown Object (File)
Sat, Mar 21, 12:19 AM
Unknown Object (File)
Mar 2 2026, 2:09 PM
Unknown Object (File)
Feb 26 2026, 9:55 PM
Subscribers
None

Details

Summary

Increasing operating frequency without telling card to switch to high-speed mode first upsets some cards and generates CRC errors.
While here, deselect / reselect cards after CMD6 and SCR fetch, as in original code.

Test Plan

This diff enables normal operation for the following card: <SDHC SL16G 8.0 SN 19853490 MFG 01/2017> with Raspberry Pi 3 host.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

other than the minor style nits, this looks good.

sys/cam/mmc/mmc_da.c
904 โ†—(On Diff #42975)

style says this { is alone on the next line.

905 โ†—(On Diff #42975)

and no blank line here.

This revision is now accepted and ready to land.Jun 4 2018, 8:27 PM
This revision was automatically updated to reflect the committed changes.