Commit 08ebf90
mmc: core: Fixup support for writeback-cache for eMMC and SD
During the card initialization process, the mmc core checks whether the
eMMC/SD card supports an internal writeback-cache and then enables it
inside the card.
Unfortunately, this isn't according to what the mmc core reports to the
upper block layer. Instead, the writeback-cache support with REQ_FLUSH and
REQ_FUA, are being enabled depending on whether the host supports the CMD23
(MMC_CAP_CMD23) and whether an eMMC supports the reliable-write command.
This is wrong and it may also sound awkward. In fact, it's a remnant
from when both eMMC/SD cards didn't have dedicated commands/support to
control the internal writeback-cache. In other words, it was the best we
could do at that point in time.
To fix the problem, but also without breaking backwards compatibility,
let's align the REQ_FLUSH support with whether the writeback-cache became
successfully enabled - for both eMMC and SD cards.
Cc: stable@kernel.org
Fixes: 881d1c2 ("mmc: core: Add cache control for eMMC4.5 device")
Fixes: 130206a ("mmc: core: Add support for cache ctrl for SD cards")
Depends-on: 97fce12 ("mmc: block: Issue a cache flush only when it's enabled")
Reviewed-by: Avri Altman <Avri.Altman@wdc.com>
Signed-off-by: Michael Wu <michael@allwinnertech.com>
Link: https://lore.kernel.org/r/20220331073223.106415-1-michael@allwinnertech.com
[Ulf: Re-wrote the commit message]
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>1 parent 5d43593 commit 08ebf90
1 file changed
+9
-3
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2382 | 2382 | | |
2383 | 2383 | | |
2384 | 2384 | | |
| 2385 | + | |
| 2386 | + | |
2385 | 2387 | | |
2386 | 2388 | | |
2387 | 2389 | | |
| |||
2461 | 2463 | | |
2462 | 2464 | | |
2463 | 2465 | | |
2464 | | - | |
2465 | | - | |
| 2466 | + | |
2466 | 2467 | | |
2467 | 2468 | | |
2468 | 2469 | | |
2469 | | - | |
| 2470 | + | |
| 2471 | + | |
2470 | 2472 | | |
| 2473 | + | |
| 2474 | + | |
| 2475 | + | |
| 2476 | + | |
2471 | 2477 | | |
2472 | 2478 | | |
2473 | 2479 | | |
| |||
0 commit comments