kernel: use uintptr_t for syscall arguments

We need to pass system call args using a register-width
data type and not hard-code this to u32_t.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
This commit is contained in:
Andrew Boie 2019-11-05 09:27:18 -08:00 committed by Andrew Boie
commit 800b35f598
8 changed files with 107 additions and 77 deletions

View file

@ -149,7 +149,7 @@ Inside this header is the body of :c:func:`k_sem_init()`::
{
#ifdef CONFIG_USERSPACE
if (z_syscall_trap()) {
z_arch_syscall_invoke3(*(u32_t *)&sem, *(u32_t *)&initial_count, *(u32_t *)&limit, K_SYSCALL_K_SEM_INIT);
z_arch_syscall_invoke3(*(uintptr_t *)&sem, *(uintptr_t *)&initial_count, *(uintptr_t *)&limit, K_SYSCALL_K_SEM_INIT);
return;
}
compiler_barrier();