Lines Matching defs:host
3 * linux/drivers/mmc/host/sdhci_f_sdh30.c
32 static void *sdhci_f_sdhost_priv(struct sdhci_host *host)
34 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
39 static void sdhci_f_sdh30_soft_voltage_switch(struct sdhci_host *host)
41 struct f_sdhost_priv *priv = sdhci_f_sdhost_priv(host);
45 ctrl = sdhci_readl(host, F_SDH30_IO_CONTROL2);
47 sdhci_writel(host, ctrl, F_SDH30_IO_CONTROL2);
49 sdhci_writel(host, ctrl, F_SDH30_IO_CONTROL2);
52 sdhci_writel(host, ctrl, F_SDH30_IO_CONTROL2);
57 ctrl = sdhci_readl(host, F_SDH30_ESD_CONTROL);
59 sdhci_writel(host, ctrl, F_SDH30_ESD_CONTROL);
62 ctrl = sdhci_readl(host, F_SDH30_TUNING_SETTING);
64 sdhci_writel(host, ctrl, F_SDH30_TUNING_SETTING);
67 static unsigned int sdhci_f_sdh30_get_min_clock(struct sdhci_host *host)
72 static void sdhci_f_sdh30_reset(struct sdhci_host *host, u8 mask)
74 struct f_sdhost_priv *priv = sdhci_f_sdhost_priv(host);
77 if (sdhci_readw(host, SDHCI_CLOCK_CONTROL) == 0)
78 sdhci_writew(host, 0xBC01, SDHCI_CLOCK_CONTROL);
80 sdhci_reset(host, mask);
83 ctl = sdhci_readl(host, F_SDH30_ESD_CONTROL);
85 sdhci_writel(host, ctl, F_SDH30_ESD_CONTROL);
88 if ((host->mmc->caps & MMC_CAP_NONREMOVABLE) &&
89 !(sdhci_readl(host, SDHCI_PRESENT_STATE) & SDHCI_CARD_PRESENT)) {
90 ctl = sdhci_readl(host, F_SDH30_TEST);
92 sdhci_writel(host, ctl, F_SDH30_TEST);
115 struct sdhci_host *host;
122 host = sdhci_pltfm_init(pdev, &sdhci_f_sdh30_pltfm_data,
124 if (IS_ERR(host))
125 return PTR_ERR(host);
127 pltfm_host = sdhci_priv(host);
134 ret = mmc_of_parse(host->mmc);
173 ctrl = sdhci_readw(host, F_SDH30_AHB_CONFIG);
177 sdhci_writew(host, ctrl, F_SDH30_AHB_CONFIG);
179 reg = sdhci_readl(host, F_SDH30_ESD_CONTROL);
180 sdhci_writel(host, reg & ~F_SDH30_EMMC_RST, F_SDH30_ESD_CONTROL);
182 sdhci_writel(host, reg | F_SDH30_EMMC_RST, F_SDH30_ESD_CONTROL);
184 reg = sdhci_readl(host, SDHCI_CAPABILITIES);
189 host->quirks |= SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK;
191 ret = sdhci_add_host(host);
211 struct sdhci_host *host = platform_get_drvdata(pdev);
212 struct f_sdhost_priv *priv = sdhci_f_sdhost_priv(host);