mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 23:22:31 +02:00
mmc: core: Add Ext memory addressing for erase
CMD22 shall precede CMD32 and CMD33 to configure 38-bit erase start address and 38 bit erase stop address. Reviewed-by: Adrian Hunter <adrian.hunter@intel.com> Signed-off-by: Avri Altman <avri.altman@wdc.com> Link: https://lore.kernel.org/r/20241006051148.160278-7-avri.altman@wdc.com Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
parent
9b9c665aee
commit
c2d8d4954e
|
|
@ -1647,6 +1647,12 @@ static int mmc_do_erase(struct mmc_card *card, sector_t from,
|
|||
cmd.opcode = MMC_ERASE_GROUP_START;
|
||||
cmd.arg = from;
|
||||
cmd.flags = MMC_RSP_SPI_R1 | MMC_RSP_R1 | MMC_CMD_AC;
|
||||
|
||||
if (mmc_card_ult_capacity(card)) {
|
||||
cmd.ext_addr = from >> 32;
|
||||
cmd.has_ext_addr = true;
|
||||
}
|
||||
|
||||
err = mmc_wait_for_cmd(card->host, &cmd, 0);
|
||||
if (err) {
|
||||
pr_err("mmc_erase: group start error %d, "
|
||||
|
|
@ -1662,6 +1668,12 @@ static int mmc_do_erase(struct mmc_card *card, sector_t from,
|
|||
cmd.opcode = MMC_ERASE_GROUP_END;
|
||||
cmd.arg = to;
|
||||
cmd.flags = MMC_RSP_SPI_R1 | MMC_RSP_R1 | MMC_CMD_AC;
|
||||
|
||||
if (mmc_card_ult_capacity(card)) {
|
||||
cmd.ext_addr = to >> 32;
|
||||
cmd.has_ext_addr = true;
|
||||
}
|
||||
|
||||
err = mmc_wait_for_cmd(card->host, &cmd, 0);
|
||||
if (err) {
|
||||
pr_err("mmc_erase: group end error %d, status %#x\n",
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user