Lines Matching refs:host

39 	struct pl180_mmc_host *host = dev->priv;  in wait_for_command_end()  local
48 hoststatus = readl(&host->base->status) & statusmask; in wait_for_command_end()
51 writel(statusmask, &host->base->status_clear); in wait_for_command_end()
62 cmd->response[0] = readl(&host->base->response0); in wait_for_command_end()
63 cmd->response[1] = readl(&host->base->response1); in wait_for_command_end()
64 cmd->response[2] = readl(&host->base->response2); in wait_for_command_end()
65 cmd->response[3] = readl(&host->base->response3); in wait_for_command_end()
80 struct pl180_mmc_host *host = dev->priv; in do_command() local
90 writel((u32)cmd->cmdarg, &host->base->argument); in do_command()
92 writel(sdi_cmd, &host->base->command); in do_command()
101 u32 sdi_pwr = readl(&host->base->power) & ~SDI_PWR_OPD; in do_command()
102 writel(sdi_pwr, &host->base->power); in do_command()
112 struct pl180_mmc_host *host = dev->priv; in read_bytes() local
117 status = readl(&host->base->status); in read_bytes()
122 *(tempbuff) = readl(&host->base->fifo); in read_bytes()
126 status = readl(&host->base->status); in read_bytes()
135 status = readl(&host->base->status); in read_bytes()
153 writel(SDI_ICR_MASK, &host->base->status_clear); in read_bytes()
168 struct pl180_mmc_host *host = dev->priv; in write_bytes() local
173 status = readl(&host->base->status); in write_bytes()
180 &host->base->fifo); in write_bytes()
185 writel(*(tempbuff), &host->base->fifo); in write_bytes()
191 status = readl(&host->base->status); in write_bytes()
198 status = readl(&host->base->status); in write_bytes()
212 writel(SDI_ICR_MASK, &host->base->status_clear); in write_bytes()
227 struct pl180_mmc_host *host = dev->priv; in do_data_transfer() local
232 if (!host->version2) { in do_data_transfer()
241 writel(SDI_DTIMER_DEFAULT, &host->base->datatimer); in do_data_transfer()
242 writel(data_len, &host->base->datalength); in do_data_transfer()
247 writel(data_ctrl, &host->base->datactrl); in do_data_transfer()
260 writel(data_ctrl, &host->base->datactrl); in do_data_transfer()
284 struct pl180_mmc_host *host = dev->priv; in host_set_ios() local
287 sdi_clkcr = readl(&host->base->clock); in host_set_ios()
298 clkdiv = (host->clock_in / dev->clock) - 2; in host_set_ios()
301 tmp_clock = host->clock_in / (clkdiv + 2); in host_set_ios()
304 tmp_clock = host->clock_in / (clkdiv + 2); in host_set_ios()
310 tmp_clock = host->clock_in / (clkdiv + 2); in host_set_ios()
338 writel(sdi_clkcr, &host->base->clock); in host_set_ios()
348 struct pl180_mmc_host *host = dev->priv; in mmc_host_reset() local
350 writel(host->pwr_init, &host->base->power); in mmc_host_reset()
367 int arm_pl180_mmci_init(struct pl180_mmc_host *host, struct mmc **mmc) in arm_pl180_mmci_init() argument
371 writel(host->pwr_init, &host->base->power); in arm_pl180_mmci_init()
372 writel(host->clkdiv_init, &host->base->clock); in arm_pl180_mmci_init()
376 sdi_u32 = readl(&host->base->mask0) & ~SDI_MASK0_MASK; in arm_pl180_mmci_init()
377 writel(sdi_u32, &host->base->mask0); in arm_pl180_mmci_init()
379 host->cfg.name = host->name; in arm_pl180_mmci_init()
381 host->cfg.ops = &arm_pl180_mmci_ops; in arm_pl180_mmci_init()
384 host->cfg.host_caps = host->caps; in arm_pl180_mmci_init()
385 host->cfg.voltages = host->voltages; in arm_pl180_mmci_init()
386 host->cfg.f_min = host->clock_min; in arm_pl180_mmci_init()
387 host->cfg.f_max = host->clock_max; in arm_pl180_mmci_init()
388 if (host->b_max != 0) in arm_pl180_mmci_init()
389 host->cfg.b_max = host->b_max; in arm_pl180_mmci_init()
391 host->cfg.b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT; in arm_pl180_mmci_init()
393 *mmc = mmc_create(&host->cfg, host); in arm_pl180_mmci_init()
409 struct pl180_mmc_host *host = mmc->priv; in arm_pl180_mmc_probe() local
424 strcpy(host->name, "MMC"); in arm_pl180_mmc_probe()
425 host->pwr_init = INIT_PWR; in arm_pl180_mmc_probe()
426 host->clkdiv_init = SDI_CLKCR_CLKDIV_INIT_V1 | SDI_CLKCR_CLKEN | in arm_pl180_mmc_probe()
428 host->voltages = VOLTAGE_WINDOW_SD; in arm_pl180_mmc_probe()
429 host->caps = 0; in arm_pl180_mmc_probe()
430 host->clock_in = clk_get_rate(&clk); in arm_pl180_mmc_probe()
431 host->clock_min = host->clock_in / (2 * (SDI_CLKCR_CLKDIV_INIT_V1 + 1)); in arm_pl180_mmc_probe()
432 host->clock_max = dev_read_u32_default(dev, "max-frequency", in arm_pl180_mmc_probe()
434 host->version2 = dev_get_driver_data(dev); in arm_pl180_mmc_probe()
436 gpio_request_by_name(dev, "cd-gpios", 0, &host->cd_gpio, GPIOD_IS_IN); in arm_pl180_mmc_probe()
441 host->caps |= MMC_MODE_8BIT; in arm_pl180_mmc_probe()
444 host->caps |= MMC_MODE_4BIT; in arm_pl180_mmc_probe()
452 ret = arm_pl180_mmci_init(host, &mmc); in arm_pl180_mmc_probe()
459 dev->priv = host; in arm_pl180_mmc_probe()
484 struct pl180_mmc_host *host = mmc->priv; in dm_mmc_getcd() local
487 if (dm_gpio_is_valid(&host->cd_gpio)) { in dm_mmc_getcd()
488 value = dm_gpio_get_value(&host->cd_gpio); in dm_mmc_getcd()
489 if (host->cd_inverted) in dm_mmc_getcd()
506 struct pl180_mmc_host *host = mmc->priv; in arm_pl180_mmc_ofdata_to_platdata() local
513 host->base = (void *)addr; in arm_pl180_mmc_ofdata_to_platdata()