Lines Matching full:host
171 mmcsd_send_request(card->host, &req); in mmc_get_ext_csd()
217 struct rt_mmcsd_host *host = card->host; in mmc_switch() local
225 err = mmcsd_send_cmd(host, &cmd, 3); in mmc_switch()
301 struct rt_mmcsd_host *host = card->host; in mmc_select_bus_width() local
316 * Host is capable of 8bit transfer, then switch in mmc_select_bus_width()
320 * bus width on the host. in mmc_select_bus_width()
329 mmcsd_set_bus_width(host, bus_width); in mmc_select_bus_width()
354 rt_err_t mmc_send_op_cond(struct rt_mmcsd_host *host, in mmc_send_op_cond() argument
364 cmd.arg = controller_is_spi(host) ? 0 : ocr; in mmc_send_op_cond()
368 err = mmcsd_send_cmd(host, &cmd, 3); in mmc_send_op_cond()
377 if (controller_is_spi(host)) { in mmc_send_op_cond()
390 if (rocr && !controller_is_spi(host)) in mmc_send_op_cond()
396 static rt_err_t mmc_set_card_addr(struct rt_mmcsd_host *host, rt_uint32_t rca) in mmc_set_card_addr() argument
407 err = mmcsd_send_cmd(host, &cmd, 3); in mmc_set_card_addr()
414 static rt_int32_t mmcsd_mmc_init_card(struct rt_mmcsd_host *host, in mmcsd_mmc_init_card() argument
424 mmcsd_go_idle(host); in mmcsd_mmc_init_card()
427 err = mmc_send_op_cond(host, ocr | (1 << 30), &rocr); in mmcsd_mmc_init_card()
431 if (controller_is_spi(host)) in mmcsd_mmc_init_card()
433 err = mmcsd_spi_use_crc(host, 1); in mmcsd_mmc_init_card()
438 if (controller_is_spi(host)) in mmcsd_mmc_init_card()
439 err = mmcsd_get_cid(host, resp); in mmcsd_mmc_init_card()
441 err = mmcsd_all_get_cid(host, resp); in mmcsd_mmc_init_card()
455 card->host = host; in mmcsd_mmc_init_card()
462 if (!controller_is_spi(host)) in mmcsd_mmc_init_card()
464 err = mmc_set_card_addr(host, card->rca); in mmcsd_mmc_init_card()
468 mmcsd_set_bus_mode(host, MMCSD_BUSMODE_PUSHPULL); in mmcsd_mmc_init_card()
479 if (!controller_is_spi(host)) in mmcsd_mmc_init_card()
517 mmcsd_set_clock(host, max_data_rate); in mmcsd_mmc_init_card()
522 host->card = card; in mmcsd_mmc_init_card()
537 rt_int32_t init_mmc(struct rt_mmcsd_host *host, rt_uint32_t ocr) in init_mmc() argument
544 if (controller_is_spi(host)) in init_mmc()
546 err = mmcsd_spi_read_ocr(host, 0, &ocr); in init_mmc()
551 current_ocr = mmcsd_select_voltage(host, ocr); in init_mmc()
565 err = mmcsd_mmc_init_card(host, current_ocr); in init_mmc()
569 mmcsd_host_unlock(host); in init_mmc()
571 err = rt_mmcsd_blk_probe(host->card); in init_mmc()
574 mmcsd_host_lock(host); in init_mmc()
579 mmcsd_host_lock(host); in init_mmc()
580 rt_mmcsd_blk_remove(host->card); in init_mmc()
581 rt_free(host->card); in init_mmc()
582 host->card = RT_NULL; in init_mmc()