mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-10 10:20:17 -04:00
mmc: sdhci: Auto-CMD23 fixes.
Fixes bugs in Auto-CMD23 feature enable decision. Auto-CMD23
should be enabled if host is >= v3, and SDMA is not in use.
USE_ADMA | USE_SDMA | Auto-CMD23
---------+----------+-----------
0 | 0 | 1
---------+----------+-----------
0 | 1 | 0
---------+----------+-----------
1 | 0 | 1
---------+----------+-----------
1 | 1 | 1
Signed-off-by: Andrei Warkentin <andreiw@motorola.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
This commit is contained in:
committed by
Chris Ball
parent
8edf63710b
commit
4f3d3e9b50
@@ -2494,9 +2494,9 @@ int sdhci_add_host(struct sdhci_host *host)
|
||||
host->flags |= SDHCI_AUTO_CMD12;
|
||||
|
||||
/* Auto-CMD23 stuff only works in ADMA or PIO. */
|
||||
if ((host->version == SDHCI_SPEC_300) &&
|
||||
if ((host->version >= SDHCI_SPEC_300) &&
|
||||
((host->flags & SDHCI_USE_ADMA) ||
|
||||
!(host->flags & SDHCI_REQ_USE_DMA))) {
|
||||
!(host->flags & SDHCI_USE_SDMA))) {
|
||||
host->flags |= SDHCI_AUTO_CMD23;
|
||||
DBG("%s: Auto-CMD23 available\n", mmc_hostname(mmc));
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user