diff --git a/ulib/system/system.c b/ulib/system/system.c index 449a995..272d02f 100644 --- a/ulib/system/system.c +++ b/ulib/system/system.c @@ -159,3 +159,26 @@ int32_t time(Time *time) { return syscall(SYS_TIME, (uint64_t)time, 0, 0, 0, 0, 0); } +int32_t ipc_mbusmake(char *name, size_t objsize, size_t objmax) { + return syscall(SYS_IPC_MBUSMAKE, (uint64_t)name, (uint64_t)objsize, (uint64_t)objmax, 0, 0, 0); +} + +int32_t ipc_mbusdelete(char *name) { + return syscall(SYS_IPC_MBUSDELETE, (uint64_t)name, 0, 0, 0, 0, 0); +} + +int32_t ipc_mbuspublish(char *name, const uint8_t *const buffer) { + return syscall(SYS_IPC_MBUSPUBLISH, (uint64_t)name, (uint64_t)buffer, 0, 0, 0, 0); +} + +int32_t ipc_mbusconsume(char *name, uint8_t *const buffer) { + return syscall(SYS_IPC_MBUSCONSUME, (uint64_t)name, (uint64_t)buffer, 0, 0, 0, 0); +} + +int32_t ipc_mbusattch(char *name) { + return syscall(SYS_IPC_MBUSATTCH, (uint64_t)name, 0, 0, 0, 0, 0); +} + +int32_t ipc_mbusdttch(char *name) { + return syscall(SYS_IPC_MBUSATTCH, (uint64_t)name, 0, 0, 0, 0, 0); +} diff --git a/ulib/system/system.h b/ulib/system/system.h index d8af30c..44155b0 100644 --- a/ulib/system/system.h +++ b/ulib/system/system.h @@ -48,5 +48,11 @@ int32_t dev_stat(DevStat *devstatbuf, size_t idx); int32_t dev_cmd(Dev_t *dev, uint64_t cmd, void *buf, size_t len); int32_t dev_delhandle(Dev_t *dev); int32_t time(Time *time); +int32_t ipc_mbusmake(char *name, size_t objsize, size_t objmax); +int32_t ipc_mbusdelete(char *name); +int32_t ipc_mbuspublish(char *name, const uint8_t *const buffer); +int32_t ipc_mbusconsume(char *name, uint8_t *const buffer); +int32_t ipc_mbusattch(char *name); +int32_t ipc_mbusdttch(char *name); #endif // ULIB_SYSTEM_SYSTEM_H_