Lines Matching refs:host

131 			     struct sdhci_host *host)  in armada_38x_quirks()  argument
134 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); in armada_38x_quirks()
138 host->quirks |= SDHCI_QUIRK_MISSING_CAPS; in armada_38x_quirks()
140 host->caps = sdhci_readl(host, SDHCI_CAPABILITIES); in armada_38x_quirks()
141 host->caps1 = sdhci_readl(host, SDHCI_CAPABILITIES_1); in armada_38x_quirks()
156 host->caps1 &= ~(SDHCI_SUPPORT_SDR50 | SDHCI_SUPPORT_DDR50); in armada_38x_quirks()
167 host->caps &= ~SDHCI_CAN_VDD_180; in armada_38x_quirks()
168 host->mmc->caps &= ~MMC_CAP_1_8V_DDR; in armada_38x_quirks()
170 host->caps &= ~SDHCI_CAN_VDD_330; in armada_38x_quirks()
172 host->caps1 &= ~(SDHCI_SUPPORT_SDR104 | SDHCI_USE_SDR50_TUNING); in armada_38x_quirks()
177 static void pxav3_reset(struct sdhci_host *host, u8 mask) in pxav3_reset() argument
179 struct platform_device *pdev = to_platform_device(mmc_dev(host->mmc)); in pxav3_reset()
182 sdhci_reset(host, mask); in pxav3_reset()
192 tmp = readw(host->ioaddr + SD_CLOCK_BURST_SIZE_SETUP); in pxav3_reset()
196 writew(tmp, host->ioaddr + SD_CLOCK_BURST_SIZE_SETUP); in pxav3_reset()
202 static void pxav3_gen_init_74_clocks(struct sdhci_host *host, u8 power_mode) in pxav3_gen_init_74_clocks() argument
204 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); in pxav3_gen_init_74_clocks()
212 dev_dbg(mmc_dev(host->mmc), in pxav3_gen_init_74_clocks()
220 tmp = readw(host->ioaddr + SD_CE_ATA_2); in pxav3_gen_init_74_clocks()
222 writew(tmp, host->ioaddr + SD_CE_ATA_2); in pxav3_gen_init_74_clocks()
225 tmp = readw(host->ioaddr + SD_CFG_FIFO_PARAM); in pxav3_gen_init_74_clocks()
227 writew(tmp, host->ioaddr + SD_CFG_FIFO_PARAM); in pxav3_gen_init_74_clocks()
234 if ((readw(host->ioaddr + SD_CE_ATA_2) in pxav3_gen_init_74_clocks()
241 dev_warn(mmc_dev(host->mmc), "74 clock interrupt not cleared\n"); in pxav3_gen_init_74_clocks()
244 tmp = readw(host->ioaddr + SD_CE_ATA_2); in pxav3_gen_init_74_clocks()
246 writew(tmp, host->ioaddr + SD_CE_ATA_2); in pxav3_gen_init_74_clocks()
251 static void pxav3_set_uhs_signaling(struct sdhci_host *host, unsigned int uhs) in pxav3_set_uhs_signaling() argument
253 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); in pxav3_set_uhs_signaling()
261 ctrl_2 = sdhci_readw(host, SDHCI_HOST_CONTROL2); in pxav3_set_uhs_signaling()
302 sdhci_writew(host, ctrl_2, SDHCI_HOST_CONTROL2); in pxav3_set_uhs_signaling()
303 dev_dbg(mmc_dev(host->mmc), in pxav3_set_uhs_signaling()
366 struct sdhci_host *host = NULL; in sdhci_pxav3_probe() local
375 host = sdhci_pltfm_init(pdev, &sdhci_pxav3_pdata, 0); in sdhci_pxav3_probe()
376 if (IS_ERR(host)) in sdhci_pxav3_probe()
377 return PTR_ERR(host); in sdhci_pxav3_probe()
379 pltfm_host = sdhci_priv(host); in sdhci_pxav3_probe()
398 host->mmc->caps |= MMC_CAP_1_8V_DDR; in sdhci_pxav3_probe()
401 ret = armada_38x_quirks(pdev, host); in sdhci_pxav3_probe()
411 ret = mmc_of_parse(host->mmc); in sdhci_pxav3_probe()
420 host->mmc->caps |= MMC_CAP_NONREMOVABLE; in sdhci_pxav3_probe()
424 host->mmc->caps |= MMC_CAP_8_BIT_DATA; in sdhci_pxav3_probe()
427 host->quirks |= pdata->quirks; in sdhci_pxav3_probe()
429 host->quirks2 |= pdata->quirks2; in sdhci_pxav3_probe()
431 host->mmc->caps |= pdata->host_caps; in sdhci_pxav3_probe()
433 host->mmc->caps2 |= pdata->host_caps2; in sdhci_pxav3_probe()
435 host->mmc->pm_caps |= pdata->pm_caps; in sdhci_pxav3_probe()
438 ret = mmc_gpio_request_cd(host->mmc, pdata->ext_cd_gpio, in sdhci_pxav3_probe()
441 dev_err(mmc_dev(host->mmc), in sdhci_pxav3_probe()
455 ret = sdhci_add_host(host); in sdhci_pxav3_probe()
461 platform_set_drvdata(pdev, host); in sdhci_pxav3_probe()
463 if (host->mmc->pm_caps & MMC_PM_KEEP_POWER) { in sdhci_pxav3_probe()
465 host->mmc->pm_flags |= MMC_PM_WAKE_SDIO_IRQ; in sdhci_pxav3_probe()
489 struct sdhci_host *host = platform_get_drvdata(pdev); in sdhci_pxav3_remove() local
490 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); in sdhci_pxav3_remove()
497 sdhci_remove_host(host, 1); in sdhci_pxav3_remove()
511 struct sdhci_host *host = dev_get_drvdata(dev); in sdhci_pxav3_suspend() local
514 ret = sdhci_suspend_host(host); in sdhci_pxav3_suspend()
524 struct sdhci_host *host = dev_get_drvdata(dev); in sdhci_pxav3_resume() local
527 ret = sdhci_resume_host(host); in sdhci_pxav3_resume()
538 struct sdhci_host *host = dev_get_drvdata(dev); in sdhci_pxav3_runtime_suspend() local
539 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); in sdhci_pxav3_runtime_suspend()
543 ret = sdhci_runtime_suspend_host(host); in sdhci_pxav3_runtime_suspend()
556 struct sdhci_host *host = dev_get_drvdata(dev); in sdhci_pxav3_runtime_resume() local
557 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); in sdhci_pxav3_runtime_resume()
564 return sdhci_runtime_resume_host(host); in sdhci_pxav3_runtime_resume()