Kernel/armv7 - Working on interrupt support, currently broken
[tpg/acess2.git] / Kernel / arch / armv7 / include / proc.h
1 /*
2  * Acess2
3  * ARM7 Architecture
4  *
5  * proc.h - Arch-Dependent Process Management
6  */
7 #ifndef _PROC_H_
8 #define _PROC_H_
9
10 #define MAX_CPUS        4
11
12 // === STRUCTURES ===
13 typedef struct {
14         Uint32  IP, SP;
15         Uint32  UserIP, UserSP;
16 } tTaskState;
17
18 typedef struct {
19         Uint32  Base;
20 } tMemoryState;
21
22 typedef struct {
23         union {
24                 Uint32  Num;
25                 Uint32  Error;
26         };
27         union {
28                 Uint32  Arg1;
29                 Uint32  Return;
30         };
31         union {
32                 Uint32  Arg2;
33                 Uint32  RetHi;
34         };
35         Uint32  Arg3;
36         Uint32  Arg4;
37         Uint32  Arg5;
38         Uint32  Arg6;   // R6
39         Uint32  Unused[13-6];
40         Uint32  StackPointer;   // R13
41         Uint32  _lr;
42         Uint32  _ip;
43 } tSyscallRegs;
44
45 // === MACROS ===
46 #define HALT()  do{}while(0)
47
48 // === PROTOTYPES ===
49
50 #endif
51

UCC git Repository :: git.ucc.asn.au