Lines Matching defs:host
29 #include <linux/mmc/host.h>
71 struct sdhci_host *host;
205 static void sdhci_acpi_int_hw_reset(struct sdhci_host *host)
209 reg = sdhci_readb(host, SDHCI_POWER_CONTROL);
211 sdhci_writeb(host, reg, SDHCI_POWER_CONTROL);
215 sdhci_writeb(host, reg, SDHCI_POWER_CONTROL);
312 struct sdhci_host *host = c->host;
315 sdhci_readl(host, SDHCI_CAPABILITIES) == 0x446cc8b2 &&
316 sdhci_readl(host, SDHCI_CAPABILITIES_1) == 0x00000807)
317 host->timeout_clk = 1000; /* 1000 kHz i.e. 1 MHz */
320 host->mmc_host_ops.get_cd = bxt_get_cd;
322 intel_dsm_init(intel_host, &pdev->dev, host->mmc);
324 host->mmc_host_ops.start_signal_voltage_switch =
338 c->host->mmc->caps &= ~MMC_CAP_UHS_SDR25;
341 c->host->mmc->caps &= ~MMC_CAP_UHS_SDR50;
344 c->host->mmc->caps &= ~MMC_CAP_UHS_DDR50;
347 c->host->mmc->caps &= ~MMC_CAP_UHS_SDR104;
399 struct sdhci_host *host = ptr;
401 sdhci_writel(host, 0x3, VENDOR_SPECIFIC_PWRCTL_CLEAR_REG);
402 sdhci_writel(host, 0x1, VENDOR_SPECIFIC_PWRCTL_CTL_REG);
410 struct sdhci_host *host = c->host;
424 "sdhci_qcom", host);
431 struct sdhci_host *host = c->host;
445 free_irq(*irq, host);
475 struct sdhci_host *host = mmc_priv(card->host);
485 preset = sdhci_readw(host, SDHCI_PRESET_FOR_SDR104);
510 static void sdhci_acpi_amd_hs400_dll(struct sdhci_host *host, bool enable)
512 struct sdhci_acpi_host *acpi_host = sdhci_priv(host);
516 sdhci_writel(host, 0x40003210, SDHCI_AMD_RESET_DLL_REGISTER);
519 sdhci_writel(host, 0x40033210, SDHCI_AMD_RESET_DLL_REGISTER);
539 struct sdhci_host *host = mmc_priv(mmc);
540 struct sdhci_acpi_host *acpi_host = sdhci_priv(host);
542 unsigned int old_timing = host->timing;
547 if (old_timing != host->timing && amd_host->tuned_clock) {
548 if (host->timing == MMC_TIMING_MMC_HS400 ||
549 host->timing == MMC_TIMING_MMC_HS200) {
550 val = sdhci_readw(host, SDHCI_HOST_CONTROL2);
552 sdhci_writew(host, val, SDHCI_HOST_CONTROL2);
554 val = sdhci_readw(host, SDHCI_HOST_CONTROL2);
556 sdhci_writew(host, val, SDHCI_HOST_CONTROL2);
560 if (host->timing == MMC_TIMING_MMC_HS400 &&
562 sdhci_acpi_amd_hs400_dll(host, true);
569 struct sdhci_host *host = mmc_priv(mmc);
570 struct sdhci_acpi_host *acpi_host = sdhci_priv(host);
577 if (!err && !host->tuning_err)
583 static void amd_sdhci_reset(struct sdhci_host *host, u8 mask)
585 struct sdhci_acpi_host *acpi_host = sdhci_priv(host);
590 sdhci_acpi_amd_hs400_dll(host, false);
593 sdhci_reset(host, mask);
611 struct sdhci_host *host = c->host;
613 sdhci_read_caps(host);
614 if (host->caps1 & SDHCI_SUPPORT_DDR50)
615 host->mmc->caps = MMC_CAP_1_8V_DDR;
617 if ((host->caps1 & SDHCI_SUPPORT_SDR104) &&
618 (host->mmc->caps & MMC_CAP_1_8V_DDR))
619 host->mmc->caps2 = MMC_CAP2_HS400_1_8V;
656 host->quirks2 |= SDHCI_QUIRK2_PRESET_VALUE_BROKEN;
658 host->mmc_host_ops.select_drive_strength = amd_select_drive_strength;
659 host->mmc_host_ops.set_ios = amd_set_ios;
660 host->mmc_host_ops.execute_tuning = amd_sdhci_execute_tuning;
781 struct sdhci_host *host;
816 host = sdhci_alloc_host(dev, sizeof(struct sdhci_acpi_host) + priv_size);
817 if (IS_ERR(host))
818 return PTR_ERR(host);
820 c = sdhci_priv(host);
821 c->host = host;
828 host->hw_name = "ACPI";
829 host->ops = &sdhci_acpi_ops_dflt;
830 host->irq = platform_get_irq(pdev, 0);
831 if (host->irq < 0) {
832 err = host->irq;
836 host->ioaddr = devm_ioremap(dev, iomem->start,
838 if (host->ioaddr == NULL) {
850 host->ops = c->slot->chip->ops;
851 host->quirks |= c->slot->chip->quirks;
852 host->quirks2 |= c->slot->chip->quirks2;
853 host->mmc->caps |= c->slot->chip->caps;
854 host->mmc->caps2 |= c->slot->chip->caps2;
855 host->mmc->pm_caps |= c->slot->chip->pm_caps;
857 host->quirks |= c->slot->quirks;
858 host->quirks2 |= c->slot->quirks2;
859 host->mmc->caps |= c->slot->caps;
860 host->mmc->caps2 |= c->slot->caps2;
861 host->mmc->pm_caps |= c->slot->pm_caps;
864 host->mmc->caps2 |= MMC_CAP2_NO_PRESCAN_POWERUP;
869 err = mmc_gpiod_request_cd(host->mmc, NULL, 0, v, 0);
881 host->mmc->caps2 |= MMC_CAP2_NO_WRITE_PROTECT;
884 err = sdhci_setup_host(host);
894 err = __sdhci_add_host(host);
911 sdhci_cleanup_host(c->host);
916 sdhci_free_host(c->host);
935 dead = (sdhci_readl(c->host, SDHCI_INT_STATUS) == ~0);
936 sdhci_remove_host(c->host, dead);
941 sdhci_free_host(c->host);
948 struct sdhci_host *host = c->host;
951 host->mmc->ios.signal_voltage != MMC_SIGNAL_VOLTAGE_330) {
965 struct sdhci_host *host = c->host;
968 if (host->tuning_mode != SDHCI_TUNING_MODE_3)
969 mmc_retune_needed(host->mmc);
971 ret = sdhci_suspend_host(host);
985 return sdhci_resume_host(c->host);
995 struct sdhci_host *host = c->host;
998 if (host->tuning_mode != SDHCI_TUNING_MODE_3)
999 mmc_retune_needed(host->mmc);
1001 ret = sdhci_runtime_suspend_host(host);
1015 return sdhci_runtime_resume_host(c->host, 0);