Lines Matching refs:ios
344 mmc->ops->set_ios(mmc, &mmc->ios); in sdhci_init()
901 struct mmc_ios *ios = &mmc->ios; in sdhci_calc_sw_timeout() local
902 unsigned char bus_width = 1 << ios->bus_width; in sdhci_calc_sw_timeout()
2251 void sdhci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) in sdhci_set_ios() argument
2256 if (ios->power_mode == MMC_POWER_UNDEFINED) in sdhci_set_ios()
2261 ios->power_mode == MMC_POWER_OFF) in sdhci_set_ios()
2270 if (ios->power_mode == MMC_POWER_OFF) { in sdhci_set_ios()
2276 (ios->power_mode == MMC_POWER_UP) && in sdhci_set_ios()
2280 if (!ios->clock || ios->clock != host->clock) { in sdhci_set_ios()
2281 host->ops->set_clock(host, ios->clock); in sdhci_set_ios()
2282 host->clock = ios->clock; in sdhci_set_ios()
2298 host->ops->set_power(host, ios->power_mode, ios->vdd); in sdhci_set_ios()
2300 sdhci_set_power(host, ios->power_mode, ios->vdd); in sdhci_set_ios()
2303 host->ops->platform_send_init_74_clocks(host, ios->power_mode); in sdhci_set_ios()
2305 host->ops->set_bus_width(host, ios->bus_width); in sdhci_set_ios()
2310 if (ios->timing == MMC_TIMING_SD_HS || in sdhci_set_ios()
2311 ios->timing == MMC_TIMING_MMC_HS || in sdhci_set_ios()
2312 ios->timing == MMC_TIMING_MMC_HS400 || in sdhci_set_ios()
2313 ios->timing == MMC_TIMING_MMC_HS200 || in sdhci_set_ios()
2314 ios->timing == MMC_TIMING_MMC_DDR52 || in sdhci_set_ios()
2315 ios->timing == MMC_TIMING_UHS_SDR50 || in sdhci_set_ios()
2316 ios->timing == MMC_TIMING_UHS_SDR104 || in sdhci_set_ios()
2317 ios->timing == MMC_TIMING_UHS_DDR50 || in sdhci_set_ios()
2318 ios->timing == MMC_TIMING_UHS_SDR25) in sdhci_set_ios()
2335 if (ios->drv_type == MMC_SET_DRIVER_TYPE_A) in sdhci_set_ios()
2337 else if (ios->drv_type == MMC_SET_DRIVER_TYPE_B) in sdhci_set_ios()
2339 else if (ios->drv_type == MMC_SET_DRIVER_TYPE_C) in sdhci_set_ios()
2341 else if (ios->drv_type == MMC_SET_DRIVER_TYPE_D) in sdhci_set_ios()
2374 host->ops->set_uhs_signaling(host, ios->timing); in sdhci_set_ios()
2375 host->timing = ios->timing; in sdhci_set_ios()
2378 ((ios->timing == MMC_TIMING_UHS_SDR12) || in sdhci_set_ios()
2379 (ios->timing == MMC_TIMING_UHS_SDR25) || in sdhci_set_ios()
2380 (ios->timing == MMC_TIMING_UHS_SDR50) || in sdhci_set_ios()
2381 (ios->timing == MMC_TIMING_UHS_SDR104) || in sdhci_set_ios()
2382 (ios->timing == MMC_TIMING_UHS_DDR50) || in sdhci_set_ios()
2383 (ios->timing == MMC_TIMING_MMC_DDR52))) { in sdhci_set_ios()
2388 ios->drv_type = FIELD_GET(SDHCI_PRESET_DRV_MASK, in sdhci_set_ios()
2533 struct mmc_ios *ios) in sdhci_start_signal_voltage_switch() argument
2548 switch (ios->signal_voltage) { in sdhci_start_signal_voltage_switch()
2557 ret = mmc_regulator_set_vqmmc(mmc, ios); in sdhci_start_signal_voltage_switch()
2580 ret = mmc_regulator_set_vqmmc(mmc, ios); in sdhci_start_signal_voltage_switch()
2612 ret = mmc_regulator_set_vqmmc(mmc, ios); in sdhci_start_signal_voltage_switch()
2638 static int sdhci_prepare_hs400_tuning(struct mmc_host *mmc, struct mmc_ios *ios) in sdhci_prepare_hs400_tuning() argument
2734 mmc->ios.bus_width == MMC_BUS_WIDTH_8) in sdhci_send_tuning()
3705 mmc->ops->set_ios(mmc, &mmc->ios); in sdhci_resume_host()
3762 if (mmc->ios.power_mode != MMC_POWER_UNDEFINED && in sdhci_runtime_resume_host()
3763 mmc->ios.power_mode != MMC_POWER_OFF) { in sdhci_runtime_resume_host()
3767 mmc->ops->start_signal_voltage_switch(mmc, &mmc->ios); in sdhci_runtime_resume_host()
3768 mmc->ops->set_ios(mmc, &mmc->ios); in sdhci_runtime_resume_host()
3779 mmc->ops->hs400_enhanced_strobe(mmc, &mmc->ios); in sdhci_runtime_resume_host()