diff options
Diffstat (limited to 'arch/arm/plat-omap/include/plat/mailbox.h')
-rw-r--r-- | arch/arm/plat-omap/include/plat/mailbox.h | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/arch/arm/plat-omap/include/plat/mailbox.h b/arch/arm/plat-omap/include/plat/mailbox.h index 729166b76a7c..997656552109 100644 --- a/arch/arm/plat-omap/include/plat/mailbox.h +++ b/arch/arm/plat-omap/include/plat/mailbox.h | |||
@@ -3,10 +3,11 @@ | |||
3 | #ifndef MAILBOX_H | 3 | #ifndef MAILBOX_H |
4 | #define MAILBOX_H | 4 | #define MAILBOX_H |
5 | 5 | ||
6 | #include <linux/wait.h> | 6 | #include <linux/spinlock.h> |
7 | #include <linux/workqueue.h> | 7 | #include <linux/workqueue.h> |
8 | #include <linux/blkdev.h> | ||
9 | #include <linux/interrupt.h> | 8 | #include <linux/interrupt.h> |
9 | #include <linux/device.h> | ||
10 | #include <linux/kfifo.h> | ||
10 | 11 | ||
11 | typedef u32 mbox_msg_t; | 12 | typedef u32 mbox_msg_t; |
12 | struct omap_mbox; | 13 | struct omap_mbox; |
@@ -42,7 +43,7 @@ struct omap_mbox_ops { | |||
42 | 43 | ||
43 | struct omap_mbox_queue { | 44 | struct omap_mbox_queue { |
44 | spinlock_t lock; | 45 | spinlock_t lock; |
45 | struct request_queue *queue; | 46 | struct kfifo fifo; |
46 | struct work_struct work; | 47 | struct work_struct work; |
47 | struct tasklet_struct tasklet; | 48 | struct tasklet_struct tasklet; |
48 | int (*callback)(void *); | 49 | int (*callback)(void *); |
@@ -52,19 +53,10 @@ struct omap_mbox_queue { | |||
52 | struct omap_mbox { | 53 | struct omap_mbox { |
53 | char *name; | 54 | char *name; |
54 | unsigned int irq; | 55 | unsigned int irq; |
55 | |||
56 | struct omap_mbox_queue *txq, *rxq; | 56 | struct omap_mbox_queue *txq, *rxq; |
57 | |||
58 | struct omap_mbox_ops *ops; | 57 | struct omap_mbox_ops *ops; |
59 | |||
60 | mbox_msg_t seq_snd, seq_rcv; | ||
61 | |||
62 | struct device *dev; | 58 | struct device *dev; |
63 | |||
64 | struct omap_mbox *next; | ||
65 | void *priv; | 59 | void *priv; |
66 | |||
67 | void (*err_notify)(void); | ||
68 | }; | 60 | }; |
69 | 61 | ||
70 | int omap_mbox_msg_send(struct omap_mbox *, mbox_msg_t msg); | 62 | int omap_mbox_msg_send(struct omap_mbox *, mbox_msg_t msg); |
@@ -73,8 +65,8 @@ void omap_mbox_init_seq(struct omap_mbox *); | |||
73 | struct omap_mbox *omap_mbox_get(const char *); | 65 | struct omap_mbox *omap_mbox_get(const char *); |
74 | void omap_mbox_put(struct omap_mbox *); | 66 | void omap_mbox_put(struct omap_mbox *); |
75 | 67 | ||
76 | int omap_mbox_register(struct device *parent, struct omap_mbox *); | 68 | int omap_mbox_register(struct device *parent, struct omap_mbox **); |
77 | int omap_mbox_unregister(struct omap_mbox *); | 69 | int omap_mbox_unregister(void); |
78 | 70 | ||
79 | static inline void omap_mbox_save_ctx(struct omap_mbox *mbox) | 71 | static inline void omap_mbox_save_ctx(struct omap_mbox *mbox) |
80 | { | 72 | { |