• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/drivers/mmc/card/
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