Lines Matching refs:mmc_host
84 struct mmc_host;
95 void (*post_req)(struct mmc_host *host, struct mmc_request *req,
97 void (*pre_req)(struct mmc_host *host, struct mmc_request *req);
98 void (*request)(struct mmc_host *host, struct mmc_request *req);
100 int (*request_atomic)(struct mmc_host *host,
117 void (*set_ios)(struct mmc_host *host, struct mmc_ios *ios);
126 int (*get_ro)(struct mmc_host *host);
135 int (*get_cd)(struct mmc_host *host);
137 void (*enable_sdio_irq)(struct mmc_host *host, int enable);
139 void (*ack_sdio_irq)(struct mmc_host *host);
142 void (*init_card)(struct mmc_host *host, struct mmc_card *card);
144 int (*start_signal_voltage_switch)(struct mmc_host *host, struct mmc_ios *ios);
147 int (*card_busy)(struct mmc_host *host);
150 int (*execute_tuning)(struct mmc_host *host, u32 opcode);
153 int (*prepare_hs400_tuning)(struct mmc_host *host, struct mmc_ios *ios);
156 int (*hs400_prepare_ddr)(struct mmc_host *host);
159 void (*hs400_downgrade)(struct mmc_host *host);
162 void (*hs400_complete)(struct mmc_host *host);
165 void (*hs400_enhanced_strobe)(struct mmc_host *host,
171 void (*hw_reset)(struct mmc_host *host);
172 void (*card_event)(struct mmc_host *host);
187 int (*cqe_enable)(struct mmc_host *host, struct mmc_card *card);
189 void (*cqe_disable)(struct mmc_host *host);
194 int (*cqe_request)(struct mmc_host *host, struct mmc_request *mrq);
196 void (*cqe_post_req)(struct mmc_host *host, struct mmc_request *mrq);
202 void (*cqe_off)(struct mmc_host *host);
207 int (*cqe_wait_for_idle)(struct mmc_host *host);
213 bool (*cqe_timeout)(struct mmc_host *host, struct mmc_request *mrq,
219 void (*cqe_recovery_start)(struct mmc_host *host);
226 void (*cqe_recovery_finish)(struct mmc_host *host);
286 struct mmc_host { struct
505 struct mmc_host *mmc_alloc_host(int extra, struct device *); argument
506 int mmc_add_host(struct mmc_host *);
507 void mmc_remove_host(struct mmc_host *);
508 void mmc_free_host(struct mmc_host *);
509 int mmc_of_parse(struct mmc_host *host);
512 static inline void *mmc_priv(struct mmc_host *host) in mmc_priv()
517 static inline struct mmc_host *mmc_from_priv(void *priv) in mmc_from_priv()
519 return container_of(priv, struct mmc_host, private); in mmc_from_priv()
528 void mmc_detect_change(struct mmc_host *, unsigned long delay);
529 void mmc_request_done(struct mmc_host *, struct mmc_request *);
530 void mmc_command_done(struct mmc_host *host, struct mmc_request *mrq);
532 void mmc_cqe_request_done(struct mmc_host *host, struct mmc_request *mrq);
538 static inline bool sdio_irq_claimed(struct mmc_host *host) in sdio_irq_claimed()
543 static inline void mmc_signal_sdio_irq(struct mmc_host *host) in mmc_signal_sdio_irq()
551 void sdio_signal_irq(struct mmc_host *host);
554 int mmc_regulator_set_ocr(struct mmc_host *mmc,
557 int mmc_regulator_set_vqmmc(struct mmc_host *mmc, struct mmc_ios *ios);
559 static inline int mmc_regulator_set_ocr(struct mmc_host *mmc, in mmc_regulator_set_ocr()
566 static inline int mmc_regulator_set_vqmmc(struct mmc_host *mmc, in mmc_regulator_set_vqmmc()
573 int mmc_regulator_get_supply(struct mmc_host *mmc);
575 static inline int mmc_card_is_removable(struct mmc_host *host) in mmc_card_is_removable()
580 static inline int mmc_card_keep_power(struct mmc_host *host) in mmc_card_keep_power()
585 static inline int mmc_card_wake_sdio_irq(struct mmc_host *host) in mmc_card_wake_sdio_irq()
604 void mmc_retune_timer_stop(struct mmc_host *host);
606 static inline void mmc_retune_needed(struct mmc_host *host) in mmc_retune_needed()
612 static inline bool mmc_can_retune(struct mmc_host *host) in mmc_can_retune()
617 static inline bool mmc_doing_retune(struct mmc_host *host) in mmc_doing_retune()
622 static inline bool mmc_doing_tune(struct mmc_host *host) in mmc_doing_tune()
632 int mmc_send_tuning(struct mmc_host *host, u32 opcode, int *cmd_error);
633 int mmc_abort_tuning(struct mmc_host *host, u32 opcode);