Changes in kernel/arch/mips32/src/mips32.c [3fcea34:b169619] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/mips32/src/mips32.c
r3fcea34 rb169619 163 163 } 164 164 165 uintptr_t arch_get_initial_sp(uintptr_t stack_base, uintptr_t stack_size) 166 { 167 return stack_base + stack_size; 168 } 169 170 void userspace(uintptr_t pc, uintptr_t sp) 165 void userspace(uspace_arg_t *kernel_uarg) 171 166 { 172 167 /* EXL = 1, UM = 1, IE = 1 */ 173 168 cp0_status_write(cp0_status_read() | (cp0_status_exl_exception_bit | 174 169 cp0_status_um_bit | cp0_status_ie_enabled_bit)); 175 cp0_epc_write(pc); 176 userspace_asm(sp, pc); 170 cp0_epc_write(kernel_uarg->uspace_entry); 171 userspace_asm(kernel_uarg->uspace_stack + 172 kernel_uarg->uspace_stack_size, 173 kernel_uarg->uspace_uarg, 174 kernel_uarg->uspace_entry); 177 175 178 176 while (true)
Note:
See TracChangeset
for help on using the changeset viewer.