diff options
Diffstat (limited to 'firmware/export/kernel.h')
-rw-r--r-- | firmware/export/kernel.h | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/firmware/export/kernel.h b/firmware/export/kernel.h index 23ffc3c06a..ec8aa28a08 100644 --- a/firmware/export/kernel.h +++ b/firmware/export/kernel.h | |||
@@ -20,6 +20,7 @@ | |||
20 | #define _KERNEL_H_ | 20 | #define _KERNEL_H_ |
21 | 21 | ||
22 | #include <stdbool.h> | 22 | #include <stdbool.h> |
23 | #include <inttypes.h> | ||
23 | #include "config.h" | 24 | #include "config.h" |
24 | 25 | ||
25 | /* wrap-safe macros for tick comparison */ | 26 | /* wrap-safe macros for tick comparison */ |
@@ -51,15 +52,15 @@ | |||
51 | 52 | ||
52 | struct event | 53 | struct event |
53 | { | 54 | { |
54 | long id; | 55 | long id; |
55 | void *data; | 56 | intptr_t data; |
56 | }; | 57 | }; |
57 | 58 | ||
58 | #ifdef HAVE_EXTENDED_MESSAGING_AND_NAME | 59 | #ifdef HAVE_EXTENDED_MESSAGING_AND_NAME |
59 | struct queue_sender | 60 | struct queue_sender |
60 | { | 61 | { |
61 | struct thread_entry *thread; | 62 | struct thread_entry *thread; |
62 | void *retval; | 63 | intptr_t retval; |
63 | }; | 64 | }; |
64 | 65 | ||
65 | struct queue_sender_list | 66 | struct queue_sender_list |
@@ -112,17 +113,17 @@ extern void queue_init(struct event_queue *q, bool register_queue); | |||
112 | extern void queue_delete(struct event_queue *q); | 113 | extern void queue_delete(struct event_queue *q); |
113 | extern void queue_wait(struct event_queue *q, struct event *ev); | 114 | extern void queue_wait(struct event_queue *q, struct event *ev); |
114 | extern void queue_wait_w_tmo(struct event_queue *q, struct event *ev, int ticks); | 115 | extern void queue_wait_w_tmo(struct event_queue *q, struct event *ev, int ticks); |
115 | extern void queue_post(struct event_queue *q, long id, void *data); | 116 | extern void queue_post(struct event_queue *q, long id, intptr_t data); |
116 | #ifdef HAVE_EXTENDED_MESSAGING_AND_NAME | 117 | #ifdef HAVE_EXTENDED_MESSAGING_AND_NAME |
117 | extern void queue_enable_queue_send(struct event_queue *q, struct queue_sender_list *send); | 118 | extern void queue_enable_queue_send(struct event_queue *q, struct queue_sender_list *send); |
118 | extern void * queue_send(struct event_queue *q, long id, void *data); | 119 | extern intptr_t queue_send(struct event_queue *q, long id, intptr_t data); |
119 | extern void queue_reply(struct event_queue *q, void *retval); | 120 | extern void queue_reply(struct event_queue *q, intptr_t retval); |
120 | extern bool queue_in_queue_send(struct event_queue *q); | 121 | extern bool queue_in_queue_send(struct event_queue *q); |
121 | #endif /* HAVE_EXTENDED_MESSAGING_AND_NAME */ | 122 | #endif /* HAVE_EXTENDED_MESSAGING_AND_NAME */ |
122 | extern bool queue_empty(const struct event_queue* q); | 123 | extern bool queue_empty(const struct event_queue* q); |
123 | extern void queue_clear(struct event_queue* q); | 124 | extern void queue_clear(struct event_queue* q); |
124 | extern void queue_remove_from_head(struct event_queue *q, long id); | 125 | extern void queue_remove_from_head(struct event_queue *q, long id); |
125 | extern int queue_broadcast(long id, void *data); | 126 | extern int queue_broadcast(long id, intptr_t data); |
126 | 127 | ||
127 | extern void mutex_init(struct mutex *m); | 128 | extern void mutex_init(struct mutex *m); |
128 | extern void mutex_lock(struct mutex *m); | 129 | extern void mutex_lock(struct mutex *m); |