Changes in contrib/arch/kernel/kernel.adl [6d4c549:8add9ca5] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
contrib/arch/kernel/kernel.adl
r6d4c549 r8add9ca5 5 5 interface sys_klog { 6 6 /* Print using kernel facility */ 7 unative_t sys_klog(int fd, const void *buf, size_t size);7 sysarg_t sys_klog(int fd, const void *buf, size_t size); 8 8 protocol: 9 9 ?sys_klog* … … 12 12 interface sys_console { 13 13 /* Enable kernel console */ 14 unative_t sys_debug_enable_console(void);14 sysarg_t sys_debug_enable_console(void); 15 15 16 16 /* Disable kernel console */ 17 unative_t sys_debug_disable_console(void);17 sysarg_t sys_debug_disable_console(void); 18 18 protocol: 19 19 ( … … 25 25 interface sys_tls { 26 26 /* Set thread-local storage pointer (on architectures where kernel mode is required) */ 27 unative_t sys_tls_set(unative_t addr);27 sysarg_t sys_tls_set(sysarg_t addr); 28 28 protocol: 29 29 ?sys_tls_set* … … 32 32 interface sys_thread { 33 33 /* Create new thread */ 34 unative_t sys_thread_create(uspace_arg_t *uspace_uarg, char *uspace_name, size_t name_len, thread_id_t *uspace_thread_id);34 sysarg_t sys_thread_create(uspace_arg_t *uspace_uarg, char *uspace_name, size_t name_len, thread_id_t *uspace_thread_id); 35 35 36 36 /* Terminate current thread */ 37 unative_t sys_thread_exit(int uspace_status);37 sysarg_t sys_thread_exit(int uspace_status); 38 38 39 39 /* Get current thread id */ 40 unative_t sys_thread_get_id(thread_id_t *uspace_thread_id);40 sysarg_t sys_thread_get_id(thread_id_t *uspace_thread_id); 41 41 protocol: 42 42 ( … … 49 49 interface sys_task { 50 50 /* Set name fo the current task */ 51 unative_t sys_task_set_name(const char *uspace_name, size_t name_len);51 sysarg_t sys_task_set_name(const char *uspace_name, size_t name_len); 52 52 53 53 /* Get current task id */ 54 unative_t sys_task_get_id(task_id_t *uspace_task_id);54 sysarg_t sys_task_get_id(task_id_t *uspace_task_id); 55 55 protocol: 56 56 ( … … 62 62 interface sys_program { 63 63 /* Spawn a new instance of clonable loader service */ 64 unative_t sys_program_spawn_loader(char *uspace_name, size_t name_len);64 sysarg_t sys_program_spawn_loader(char *uspace_name, size_t name_len); 65 65 protocol: 66 66 ?sys_program_spawn_loader* … … 69 69 interface sys_futex { 70 70 /* Sleep in a futex wait queue */ 71 unative_t sys_futex_sleep_timeout(uintptr_t uaddr, uint32_t usec, int flags);71 sysarg_t sys_futex_sleep_timeout(uintptr_t uaddr, uint32_t usec, int flags); 72 72 73 73 /* Wakeup one thread waiting in futex wait queue */ 74 unative_t sys_futex_wakeup(uintptr_t uaddr);74 sysarg_t sys_futex_wakeup(uintptr_t uaddr); 75 75 protocol: 76 76 ( … … 82 82 interface sys_smc { 83 83 /* Enforce self-modifying code cache coherency */ 84 unative_t sys_smc_coherence(uintptr_t va, size_t size);84 sysarg_t sys_smc_coherence(uintptr_t va, size_t size); 85 85 protocol: 86 86 ?sys_smc_coherence* … … 89 89 interface sys_as { 90 90 /* Create new address space area */ 91 unative_t sys_as_area_create(uintptr_t address, size_t size, int flags);91 sysarg_t sys_as_area_create(uintptr_t address, size_t size, int flags); 92 92 93 93 /* Resize an address space area */ 94 unative_t sys_as_area_resize(uinptr_t address, size_t size, int flags);94 sysarg_t sys_as_area_resize(uinptr_t address, size_t size, int flags); 95 95 96 96 /* Change flags of an address space area */ 97 unative_t sys_as_area_change_flags(uintptr_t address, int flags);97 sysarg_t sys_as_area_change_flags(uintptr_t address, int flags); 98 98 99 99 /* Destroy an address space area */ 100 unative_t sys_as_area_destroy(uintptr_t address);100 sysarg_t sys_as_area_destroy(uintptr_t address); 101 101 protocol: 102 102 ( … … 110 110 interface sys_ipc { 111 111 /* Fast synchronous IPC call */ 112 unative_t sys_ipc_call_sync_fast(unative_t phoneid, unative_t method, unative_t arg1, unative_t arg2, unative_t arg3, ipc_data_t *data);112 sysarg_t sys_ipc_call_sync_fast(sysarg_t phoneid, sysarg_t method, sysarg_t arg1, sysarg_t arg2, sysarg_t arg3, ipc_data_t *data); 113 113 114 114 /* Slow synchronous IPC call */ 115 unative_t sys_ipc_call_sync_slow(unative_t phoneid, ipc_data_t *question, ipc_data_t *answer);115 sysarg_t sys_ipc_call_sync_slow(sysarg_t phoneid, ipc_data_t *question, ipc_data_t *answer); 116 116 117 117 /* Fast asynchronous IPC call */ 118 unative_t sys_ipc_call_async_fast(unative_t phoneid, unative_t method, unative_t arg1, unative_t arg2, unative_t arg3, unative_t arg4);118 sysarg_t sys_ipc_call_async_fast(sysarg_t phoneid, sysarg_t method, sysarg_t arg1, sysarg_t arg2, sysarg_t arg3, sysarg_t arg4); 119 119 120 120 /* Slow asynchronous IPC call */ 121 unative_t sys_ipc_call_async_slow(unative_t phoneid, ipc_data_t *data);121 sysarg_t sys_ipc_call_async_slow(sysarg_t phoneid, ipc_data_t *data); 122 122 123 123 /* Fast forward a received IPC call to another destination */ 124 unative_t sys_ipc_forward_fast(unative_t callid, unative_t phoneid, unative_t method, unative_t arg1, unative_t arg2, int mode);124 sysarg_t sys_ipc_forward_fast(sysarg_t callid, sysarg_t phoneid, sysarg_t method, sysarg_t arg1, sysarg_t arg2, int mode); 125 125 126 126 /* Slow forward a received IPC call to another destination */ 127 unative_t sys_ipc_forward_slow(unative_t callid, unative_t phoneid, ipc_data_t *data, int mode);127 sysarg_t sys_ipc_forward_slow(sysarg_t callid, sysarg_t phoneid, ipc_data_t *data, int mode); 128 128 129 129 /* Fast answer an IPC call */ 130 unative_t sys_ipc_answer_fast(unative_t callid, unative_t retval, unative_t arg1, unative_t arg2, unative_t arg3, unative_t arg4);130 sysarg_t sys_ipc_answer_fast(sysarg_t callid, sysarg_t retval, sysarg_t arg1, sysarg_t arg2, sysarg_t arg3, sysarg_t arg4); 131 131 132 132 /* Slow answer an IPC call */ 133 unative_t sys_ipc_answer_slow(unative_t callid, ipc_data_t *data);133 sysarg_t sys_ipc_answer_slow(sysarg_t callid, ipc_data_t *data); 134 134 135 135 /* Hang up a phone */ 136 unative_t sys_ipc_hangup(int phoneid);136 sysarg_t sys_ipc_hangup(int phoneid); 137 137 138 138 /* Wait for an incoming IPC call or answer */ 139 unative_t sys_ipc_wait_for_call(ipc_data_t *calldata, uint32_t usec, int flags);139 sysarg_t sys_ipc_wait_for_call(ipc_data_t *calldata, uint32_t usec, int flags); 140 140 141 141 /* Interrupt one thread of the current task from waiting on IPC call */ 142 unative_t sys_ipc_poke(void);142 sysarg_t sys_ipc_poke(void); 143 143 protocol: 144 144 ( … … 159 159 interface sys_event { 160 160 /* Subscribe to kernel event notifications */ 161 unative_t sys_event_subscribe(unative_t evno, unative_t method);161 sysarg_t sys_event_subscribe(sysarg_t evno, sysarg_t method); 162 162 protocol: 163 163 ?sys_event_subscribe* … … 166 166 interface sys_cap { 167 167 /* Grant capabilities to a task */ 168 unative_t sys_cap_grant(sysarg64_t *uspace_taskid_arg, cap_t caps); 168 #ifdef __32_BITS__ 169 sysarg_t sys_cap_grant(sysarg64_t *uspace_taskid, cap_t caps); 170 #endif 171 172 #ifdef __64_BITS__ 173 sysarg_t sys_cap_grant(sysarg_t taskid, cap_t caps); 174 #endif 169 175 170 176 /* Revoke capabilities from a task */ 171 unative_t sys_cap_revoke(sysarg64_t *uspace_taskid_arg, cap_t caps); 177 #ifdef __32_BITS__ 178 sysarg_t sys_cap_revoke(sysarg64_t *uspace_taskid, cap_t caps); 179 #endif 180 181 #ifdef __64_BITS__ 182 sysarg_t sys_cap_revoke(sysarg_t taskid, cap_t caps); 183 #endif 172 184 protocol: 173 185 ( … … 179 191 interface sys_ddi { 180 192 /* Enable access I/O address space for the current task */ 181 unative_t sys_enable_iospace(ddi_ioarg_t *uspace_io_arg);193 sysarg_t sys_enable_iospace(ddi_ioarg_t *uspace_io_arg); 182 194 183 195 /* Map physical memory to the current task's address space */ 184 unative_t sys_physmem_map(unative_t phys_base, unative_t virt_base, unative_t pages, unative_t flags);196 sysarg_t sys_physmem_map(sysarg_t phys_base, sysarg_t virt_base, sysarg_t pages, sysarg_t flags); 185 197 186 198 /* Enable or disable preemption */ 187 unative_t sys_preempt_control(int enable);199 sysarg_t sys_preempt_control(int enable); 188 200 189 201 /* Assign unique device number */ 190 unative_t sys_device_assign_devno(void);202 sysarg_t sys_device_assign_devno(void); 191 203 192 204 /* Connect an IRQ handler to the current task */ 193 unative_t sys_ipc_register_irq(inr_t inr, devno_t devno, unative_t method, irq_code_t *ucode);205 sysarg_t sys_register_irq(inr_t inr, devno_t devno, sysarg_t method, irq_code_t *ucode); 194 206 195 207 /* Disconnect an IRQ handler from the current task */ 196 unative_t sys_ipc_unregister_irq(inr_t inr, devno_t devno);208 sysarg_t sys_unregister_irq(inr_t inr, devno_t devno); 197 209 protocol: 198 210 ( … … 201 213 ?sys_device_assign_devno + 202 214 ?sys_preempt_control + 203 ?sys_ ipc_register_irq +204 ?sys_ ipc_unregister_irq215 ?sys_register_irq + 216 ?sys_unregister_irq 205 217 )* 206 218 }; … … 208 220 interface sys_sysinfo { 209 221 /* Check for sysinfo key validity */ 210 unative_t sys_sysinfo_valid(unative_t ptr, unative_t len);222 sysarg_t sys_sysinfo_valid(sysarg_t ptr, sysarg_t len); 211 223 212 224 /* Get sysinfo key value */ 213 unative_t sys_sysinfo_value(unatice_t ptr, unative_t len);225 sysarg_t sys_sysinfo_value(unatice_t ptr, sysarg_t len); 214 226 protocol: 215 227 ( … … 221 233 interface sys_debug { 222 234 /* Connect to the kernel debugging answerbox of a given task */ 223 unative_t sys_ipc_connect_kbox(sysarg64_t *uspace_taskid_arg); 235 #ifdef __32_BITS__ 236 sysarg_t sys_ipc_connect_kbox(sysarg64_t *uspace_taskid); 237 #endif 238 239 #ifdef __64_BITS__ 240 sysarg_t sys_ipc_connect_kbox(sysarg_t taskid); 241 #endif 224 242 protocol: 225 243 ?sys_ipc_connect_kbox*
Note:
See TracChangeset
for help on using the changeset viewer.