diff options
| author | Daniel Stenberg <daniel@haxx.se> | 2003-02-05 11:57:04 +0000 |
|---|---|---|
| committer | Daniel Stenberg <daniel@haxx.se> | 2003-02-05 11:57:04 +0000 |
| commit | b6bf9b768d188b9db64d0ae4e4514661c41d19c4 (patch) | |
| tree | c362064f1129c35992c3d6339794502a4e54f927 /firmware/kernel.h | |
| parent | 43ba026872d754b271bacdb74c0918b0a3a92f37 (diff) | |
| download | rockbox-b6bf9b768d188b9db64d0ae4e4514661c41d19c4.zip rockbox-b6bf9b768d188b9db64d0ae4e4514661c41d19c4.tar.gz rockbox-b6bf9b768d188b9db64d0ae4e4514661c41d19c4.tar.bz2 rockbox-b6bf9b768d188b9db64d0ae4e4514661c41d19c4.tar.xz | |
Public firmware header files should now be put in firmware/include/ directory
while firmware-private header files may remain in firmware/
First out: kernel.h is moved
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3209 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/kernel.h')
| -rw-r--r-- | firmware/kernel.h | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/firmware/kernel.h b/firmware/kernel.h deleted file mode 100644 index 0f69f43..0000000 --- a/firmware/kernel.h +++ /dev/null @@ -1,82 +0,0 @@ -/*************************************************************************** - * __________ __ ___. - * Open \______ \ ____ ____ | | _\_ |__ _______ ___ - * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / - * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < - * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ - * \/ \/ \/ \/ \/ - * $Id$ - * - * Copyright (C) 2002 by Björn Stenberg - * - * All files in this archive are subject to the GNU General Public License. - * See the file COPYING in the source tree root for full license agreement. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ****************************************************************************/ -#ifndef _KERNEL_H_ -#define _KERNEL_H_ - -#include <stdbool.h> - -/* wrap-safe macros for tick comparison */ -#define TIME_AFTER(a,b) ((long)(b) - (long)(a) < 0) -#define TIME_BEFORE(a,b) TIME_AFTER(b,a) - -#define HZ 100 /* number of ticks per second */ - -#define MAX_NUM_TICK_TASKS 4 - -#define QUEUE_LENGTH 16 /* MUST be a power of 2 */ -#define QUEUE_LENGTH_MASK (QUEUE_LENGTH - 1) - -/* System defined message ID's */ -#define SYS_USB_CONNECTED -1 -#define SYS_USB_CONNECTED_ACK -2 -#define SYS_USB_DISCONNECTED -3 -#define SYS_USB_DISCONNECTED_ACK -4 -#define SYS_TIMEOUT -5 - -struct event -{ - int id; - void *data; -}; - -struct event_queue -{ - struct event events[QUEUE_LENGTH]; - unsigned int read; - unsigned int write; -}; - -struct mutex -{ - bool locked; -}; - -/* global tick variable */ -extern long current_tick; - -/* kernel functions */ -extern void kernel_init(void); -extern void yield(void); -extern void sleep(int ticks); -int set_irq_level(int level); -int tick_add_task(void (*f)(void)); -int tick_remove_task(void (*f)(void)); - -extern void queue_init(struct event_queue *q); -extern void queue_wait(struct event_queue *q, struct event *ev); -extern void queue_wait_w_tmo(struct event_queue *q, struct event *ev, int ticks); -extern void queue_post(struct event_queue *q, int id, void *data); -extern bool queue_empty(struct event_queue* q); -extern int queue_broadcast(int id, void *data); - -extern void mutex_init(struct mutex *m); -extern void mutex_lock(struct mutex *m); -extern void mutex_unlock(struct mutex *m); - -#endif |