linux/drivers/mmc/card/queue.h
<<
>>
Prefs
   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        char                    *bounce_buf;
  18        struct scatterlist      *bounce_sg;
  19        unsigned int            bounce_sg_len;
  20};
  21
  22extern int mmc_init_queue(struct mmc_queue *, struct mmc_card *, spinlock_t *);
  23extern void mmc_cleanup_queue(struct mmc_queue *);
  24extern void mmc_queue_suspend(struct mmc_queue *);
  25extern void mmc_queue_resume(struct mmc_queue *);
  26
  27extern unsigned int mmc_queue_map_sg(struct mmc_queue *);
  28extern void mmc_queue_bounce_pre(struct mmc_queue *);
  29extern void mmc_queue_bounce_post(struct mmc_queue *);
  30
  31#endif
  32