Lines Matching refs:host
126 void (*post_req)(struct mmc_host *host, struct mmc_request *req,
128 void (*pre_req)(struct mmc_host *host, struct mmc_request *req);
129 void (*request)(struct mmc_host *host, struct mmc_request *req);
131 int (*request_atomic)(struct mmc_host *host,
148 void (*set_ios)(struct mmc_host *host, struct mmc_ios *ios);
157 int (*get_ro)(struct mmc_host *host);
166 int (*get_cd)(struct mmc_host *host);
168 void (*enable_sdio_irq)(struct mmc_host *host, int enable);
170 void (*ack_sdio_irq)(struct mmc_host *host);
173 void (*init_card)(struct mmc_host *host, struct mmc_card *card);
175 int (*start_signal_voltage_switch)(struct mmc_host *host, struct mmc_ios *ios);
178 int (*card_busy)(struct mmc_host *host);
181 int (*execute_tuning)(struct mmc_host *host, u32 opcode);
184 int (*prepare_hs400_tuning)(struct mmc_host *host, struct mmc_ios *ios);
187 int (*execute_hs400_tuning)(struct mmc_host *host, struct mmc_card *card);
190 int (*prepare_sd_hs_tuning)(struct mmc_host *host, struct mmc_card *card);
193 int (*execute_sd_hs_tuning)(struct mmc_host *host, struct mmc_card *card);
196 int (*hs400_prepare_ddr)(struct mmc_host *host);
199 void (*hs400_downgrade)(struct mmc_host *host);
202 void (*hs400_complete)(struct mmc_host *host);
205 void (*hs400_enhanced_strobe)(struct mmc_host *host,
211 void (*card_hw_reset)(struct mmc_host *host);
212 void (*card_event)(struct mmc_host *host);
222 int (*init_sd_express)(struct mmc_host *host, struct mmc_ios *ios);
230 int (*cqe_enable)(struct mmc_host *host, struct mmc_card *card);
232 void (*cqe_disable)(struct mmc_host *host);
237 int (*cqe_request)(struct mmc_host *host, struct mmc_request *mrq);
239 void (*cqe_post_req)(struct mmc_host *host, struct mmc_request *mrq);
245 void (*cqe_off)(struct mmc_host *host);
250 int (*cqe_wait_for_idle)(struct mmc_host *host);
256 bool (*cqe_timeout)(struct mmc_host *host, struct mmc_request *mrq,
262 void (*cqe_recovery_start)(struct mmc_host *host);
269 void (*cqe_recovery_finish)(struct mmc_host *host);
533 int mmc_of_parse(struct mmc_host *host);
534 int mmc_of_parse_voltage(struct mmc_host *host, u32 *mask);
536 static inline void *mmc_priv(struct mmc_host *host) in mmc_priv() argument
538 return (void *)host->private; in mmc_priv()
546 #define mmc_host_is_spi(host) ((host)->caps & MMC_CAP_SPI) argument
554 void mmc_command_done(struct mmc_host *host, struct mmc_request *mrq);
556 void mmc_cqe_request_done(struct mmc_host *host, struct mmc_request *mrq);
562 static inline bool sdio_irq_claimed(struct mmc_host *host) in sdio_irq_claimed() argument
564 return host->sdio_irqs > 0; in sdio_irq_claimed()
567 static inline void mmc_signal_sdio_irq(struct mmc_host *host) in mmc_signal_sdio_irq() argument
569 host->ops->enable_sdio_irq(host, 0); in mmc_signal_sdio_irq()
570 host->sdio_irq_pending = true; in mmc_signal_sdio_irq()
571 if (host->sdio_irq_thread) in mmc_signal_sdio_irq()
572 wake_up_process(host->sdio_irq_thread); in mmc_signal_sdio_irq()
575 void sdio_signal_irq(struct mmc_host *host);
601 static inline int mmc_card_is_removable(struct mmc_host *host) in mmc_card_is_removable() argument
603 return !(host->caps & MMC_CAP_NONREMOVABLE); in mmc_card_is_removable()
606 static inline int mmc_card_keep_power(struct mmc_host *host) in mmc_card_keep_power() argument
608 return host->pm_flags & MMC_PM_KEEP_POWER; in mmc_card_keep_power()
611 static inline int mmc_card_wake_sdio_irq(struct mmc_host *host) in mmc_card_wake_sdio_irq() argument
613 return host->pm_flags & MMC_PM_WAKE_SDIO_IRQ; in mmc_card_wake_sdio_irq()
619 return card->host->ios.timing == MMC_TIMING_SD_HS || in mmc_card_hs()
620 card->host->ios.timing == MMC_TIMING_MMC_HS; in mmc_card_hs()
626 return card->host->ios.timing >= MMC_TIMING_UHS_SDR12 && in mmc_card_uhs()
627 card->host->ios.timing <= MMC_TIMING_UHS_DDR50; in mmc_card_uhs()
630 void mmc_retune_timer_stop(struct mmc_host *host);
632 static inline void mmc_retune_needed(struct mmc_host *host) in mmc_retune_needed() argument
634 if (host->can_retune) in mmc_retune_needed()
635 host->need_retune = 1; in mmc_retune_needed()
638 static inline bool mmc_can_retune(struct mmc_host *host) in mmc_can_retune() argument
640 return host->can_retune == 1; in mmc_can_retune()
643 static inline bool mmc_doing_retune(struct mmc_host *host) in mmc_doing_retune() argument
645 return host->doing_retune == 1; in mmc_doing_retune()
648 static inline bool mmc_doing_tune(struct mmc_host *host) in mmc_doing_tune() argument
650 return host->doing_retune == 1 || host->doing_init_tune == 1; in mmc_doing_tune()
658 static inline void mmc_debugfs_err_stats_inc(struct mmc_host *host, in mmc_debugfs_err_stats_inc() argument
661 host->err_stats[stat] += 1; in mmc_debugfs_err_stats_inc()
667 int mmc_send_tuning(struct mmc_host *host, u32 opcode, int *cmd_error);
668 int mmc_send_abort_tuning(struct mmc_host *host, u32 opcode);