queue.h 598 B

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