1#ifndef MMC_QUEUE_H 2#define MMC_QUEUE_H 3 4struct request; 5struct task_struct; 6 7struct mmc_queue { 8 struct mmc_card *card; 9 struct task_struct *thread; 10 struct semaphore thread_sem; 11 unsigned int flags; 12 struct request *req; 13 int (*issue_fn)(struct mmc_queue *, struct request *); 14 void *data; 15 struct request_queue *queue; 16 struct scatterlist *sg; 17}; 18 19extern int mmc_init_queue(struct mmc_queue *, struct mmc_card *, spinlock_t *); 20extern void mmc_cleanup_queue(struct mmc_queue *); 21extern void mmc_queue_suspend(struct mmc_queue *); 22extern void mmc_queue_resume(struct mmc_queue *); 23 24#endif 25