CI: https://source.denx.de/u-boot/custodians/u-boot-mmc/-/pipelines/28960

- Revert "Use max-frequency from device tree with default handling"
- Select CRC16 MMC_SPI_CRC_ON
- Add 1ms delay with 1ms margin after mmc power on to follow spec
This commit is contained in:
Tom Rini
2026-01-08 10:27:17 -06:00
3 changed files with 13 additions and 10 deletions
+1
View File
@@ -91,6 +91,7 @@ config MMC_SPI_CRC_ON
bool "Support CRC for SPI-based MMC controller"
depends on MMC_SPI
default y
select CRC16
help
This enables CRC for SPI-based MMC controllers.
+2 -7
View File
@@ -243,13 +243,8 @@ int mmc_of_parse(struct udevice *dev, struct mmc_config *cfg)
return -EINVAL;
}
/*
* Maximum frequency is obtained from the optional "max-frequency" property.
* If not specified in device tree, defaults to 0 and sdhci_setup_cfg()
* will set the MMC configuration maximum frequency to the host controller's
* maximum base clock frequency from capabilities register.
*/
cfg->f_max = dev_read_u32_default(dev, "max-frequency", 0);
/* f_max is obtained from the optional "max-frequency" property */
dev_read_u32(dev, "max-frequency", &cfg->f_max);
if (dev_read_bool(dev, "cap-sd-highspeed"))
cfg->host_caps |= MMC_CAP(SD_HS);
+10 -3
View File
@@ -2933,11 +2933,18 @@ static int mmc_power_cycle(struct mmc *mmc)
return ret;
/*
* SD spec recommends at least 1ms of delay. Let's wait for 2ms
* to be on the safer side.
* SD spec recommends at least 1ms of 'power on' delay.
* Let's wait for 2ms to be on the safer side.
*/
udelay(2000);
return mmc_power_on(mmc);
ret = mmc_power_on(mmc);
/*
* SD spec recommends at least 1ms of 'stable supply voltage' delay.
* Let's wait for 2ms to be on the safer side.
*/
udelay(2000);
return ret;
}
int mmc_get_op_cond(struct mmc *mmc, bool quiet)