#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//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