init commit
This commit is contained in:
30
arch/generic/kcall.h
Normal file
30
arch/generic/kcall.h
Normal file
@@ -0,0 +1,30 @@
|
||||
#ifndef _ELIBC_KCALL_H
|
||||
#define _ELIBC_KCALL_H
|
||||
|
||||
/* Elyz kernel-call abstraction.
|
||||
*
|
||||
* Elyz has NO syscall instruction. Communication with the kernel and PM
|
||||
* actors happens through capability invocation — a mechanism defined by the
|
||||
* kernel ABI (not finalised yet). This header describes the abstract
|
||||
* interface; the arch-specific implementation (arch/<arch>/kcall.h) fills in
|
||||
* the concrete mechanism.
|
||||
*
|
||||
* Current state: STUB — returns -ENOSYS until the Elyz kernel ABI is
|
||||
* stabilised.
|
||||
*/
|
||||
|
||||
#define ELYZ_OP_ALLOCATE 1
|
||||
#define ELYZ_OP_FREE 2
|
||||
#define ELYZ_OP_CARVE 3
|
||||
#define ELYZ_OP_EXIT 4
|
||||
|
||||
struct elyz_kcall {
|
||||
unsigned long opcode;
|
||||
unsigned long arg1;
|
||||
unsigned long arg2;
|
||||
unsigned short channel_id;
|
||||
};
|
||||
|
||||
long __kcall(struct elyz_kcall *msg);
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user