Lines Matching refs:host
54 static u16 tegra_sdhci_readw(struct sdhci_host *host, int reg) in tegra_sdhci_readw() argument
56 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); in tegra_sdhci_readw()
66 return readw(host->ioaddr + reg); in tegra_sdhci_readw()
69 static void tegra_sdhci_writew(struct sdhci_host *host, u16 val, int reg) in tegra_sdhci_writew() argument
71 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); in tegra_sdhci_writew()
83 host->ioaddr + SDHCI_TRANSFER_MODE); in tegra_sdhci_writew()
87 writew(val, host->ioaddr + reg); in tegra_sdhci_writew()
90 static void tegra_sdhci_writel(struct sdhci_host *host, u32 val, int reg) in tegra_sdhci_writel() argument
92 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); in tegra_sdhci_writel()
103 writel(val, host->ioaddr + reg); in tegra_sdhci_writel()
108 u8 gap_ctrl = readb(host->ioaddr + SDHCI_BLOCK_GAP_CONTROL); in tegra_sdhci_writel()
113 writeb(gap_ctrl, host->ioaddr + SDHCI_BLOCK_GAP_CONTROL); in tegra_sdhci_writel()
117 static unsigned int tegra_sdhci_get_ro(struct sdhci_host *host) in tegra_sdhci_get_ro() argument
119 return mmc_gpio_get_ro(host->mmc); in tegra_sdhci_get_ro()
122 static void tegra_sdhci_reset(struct sdhci_host *host, u8 mask) in tegra_sdhci_reset() argument
124 struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); in tegra_sdhci_reset()
129 sdhci_reset(host, mask); in tegra_sdhci_reset()
134 misc_ctrl = sdhci_readw(host, SDHCI_TEGRA_VENDOR_MISC_CTRL); in tegra_sdhci_reset()
145 sdhci_writew(host, misc_ctrl, SDHCI_TEGRA_VENDOR_MISC_CTRL); in tegra_sdhci_reset()
148 static void tegra_sdhci_set_bus_width(struct sdhci_host *host, int bus_width) in tegra_sdhci_set_bus_width() argument
152 ctrl = sdhci_readb(host, SDHCI_HOST_CONTROL); in tegra_sdhci_set_bus_width()
153 if ((host->mmc->caps & MMC_CAP_8_BIT_DATA) && in tegra_sdhci_set_bus_width()
164 sdhci_writeb(host, ctrl, SDHCI_HOST_CONTROL); in tegra_sdhci_set_bus_width()
252 struct sdhci_host *host; in sdhci_tegra_probe() local
263 host = sdhci_pltfm_init(pdev, soc_data->pdata, 0); in sdhci_tegra_probe()
264 if (IS_ERR(host)) in sdhci_tegra_probe()
265 return PTR_ERR(host); in sdhci_tegra_probe()
266 pltfm_host = sdhci_priv(host); in sdhci_tegra_probe()
270 dev_err(mmc_dev(host->mmc), "failed to allocate tegra_host\n"); in sdhci_tegra_probe()
277 rc = mmc_of_parse(host->mmc); in sdhci_tegra_probe()
288 clk = devm_clk_get(mmc_dev(host->mmc), NULL); in sdhci_tegra_probe()
290 dev_err(mmc_dev(host->mmc), "clk err\n"); in sdhci_tegra_probe()
297 rc = sdhci_add_host(host); in sdhci_tegra_probe()