]>
git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - drivers/mmc/card/queue.h
7 struct mmc_blk_request
{
8 struct mmc_request mrq
;
9 struct mmc_command sbc
;
10 struct mmc_command cmd
;
11 struct mmc_command stop
;
15 struct mmc_queue_req
{
17 struct mmc_blk_request brq
;
18 struct scatterlist
*sg
;
20 struct scatterlist
*bounce_sg
;
21 unsigned int bounce_sg_len
;
25 struct mmc_card
*card
;
26 struct task_struct
*thread
;
27 struct semaphore thread_sem
;
29 int (*issue_fn
)(struct mmc_queue
*, struct request
*);
31 struct request_queue
*queue
;
32 struct mmc_queue_req mqrq
[1];
33 struct mmc_queue_req
*mqrq_cur
;
36 extern int mmc_init_queue(struct mmc_queue
*, struct mmc_card
*, spinlock_t
*,
38 extern void mmc_cleanup_queue(struct mmc_queue
*);
39 extern void mmc_queue_suspend(struct mmc_queue
*);
40 extern void mmc_queue_resume(struct mmc_queue
*);
42 extern unsigned int mmc_queue_map_sg(struct mmc_queue
*,
43 struct mmc_queue_req
*);
44 extern void mmc_queue_bounce_pre(struct mmc_queue_req
*);
45 extern void mmc_queue_bounce_post(struct mmc_queue_req
*);