inital commit
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
#ifndef EE_EEKERNEL_H
|
||||
#define EE_EEKERNEL_H
|
||||
|
||||
#define WRITEBACK_DCACHE 0
|
||||
#define INVALIDATE_DCACHE 1
|
||||
#define INVALIDATE_ICACHE 2
|
||||
#define INVALIDATE_CACHE 3
|
||||
|
||||
#define DMAC_VIF0 0
|
||||
#define DMAC_VIF1 1
|
||||
#define DMAC_GIF 2
|
||||
#define DMAC_FROM_IPU 3
|
||||
#define DMAC_TO_IPU 4
|
||||
#define DMAC_FROM_SPR 8
|
||||
#define DMAC_TO_SPR 9
|
||||
|
||||
typedef struct {
|
||||
int status;
|
||||
void *entry;
|
||||
void *stack;
|
||||
int stackSize;
|
||||
void *gpReg;
|
||||
int initPriority;
|
||||
int currentPriority;
|
||||
u_int attr;
|
||||
u_int option;
|
||||
int waitType;
|
||||
int waitId;
|
||||
int wakeupCount;
|
||||
} ThreadParam;
|
||||
|
||||
typedef struct {
|
||||
int currentCount;
|
||||
int maxCount;
|
||||
int initCount;
|
||||
int numWaitThreads;
|
||||
u_int attr;
|
||||
u_int option;
|
||||
} SemaParam;
|
||||
|
||||
extern void *_gp;
|
||||
|
||||
#define ExitHandler() \
|
||||
asm volatile("\n\
|
||||
sync.l \n\
|
||||
ei \n\
|
||||
");
|
||||
|
||||
int CreateThread(ThreadParam *);
|
||||
int StartThread(int, void *arg);
|
||||
int GetThreadId(void);
|
||||
int ChangeThreadPriority(int, int);
|
||||
int RotateThreadReadyQueue(int);
|
||||
|
||||
int CreateSema(SemaParam *param);
|
||||
int SignalSema(int);
|
||||
int WaitSema(int);
|
||||
int DeleteSema(int);
|
||||
|
||||
#endif // EE_EEKERNEL_H
|
||||
Reference in New Issue
Block a user