Changeset 3e828ea in mainline for kernel/arch/mips32/src/mips32.c
- Timestamp:
- 2019-09-23T12:49:29Z (6 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 9be2358
- Parents:
- 9259d20 (diff), 1a4ec93f (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)links above to see all the changes relative to each parent. - git-author:
- Jiri Svoboda <jiri@…> (2019-09-22 12:49:07)
- git-committer:
- Jiri Svoboda <jiri@…> (2019-09-23 12:49:29)
- File:
-
- 1 edited
-
kernel/arch/mips32/src/mips32.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/mips32/src/mips32.c
r9259d20 r3e828ea 71 71 arch_ops_t *arch_ops = &mips32_ops; 72 72 73 /*74 * Why the linker moves the variable 64K away in assembler75 * when not in .text section?76 */77 78 73 /* Stack pointer saved when entering user mode */ 79 uintptr_t supervisor_sp __attribute__((section(".text"))); 74 // FIXME: This won't work with SMP unless thread creation is globally serialized. 75 uintptr_t supervisor_sp; 80 76 81 77 size_t cpu_count = 0; … … 107 103 #endif 108 104 105 str_cpy(bargs, CONFIG_BOOT_ARGUMENTS_BUFLEN, bootinfo->bootargs); 106 109 107 /* Initialize machine_ops pointer. */ 110 108 machine_ops_init(); … … 169 167 cp0_status_write(cp0_status_read() | (cp0_status_exl_exception_bit | 170 168 cp0_status_um_bit | cp0_status_ie_enabled_bit)); 171 cp0_epc_write( (uintptr_t)kernel_uarg->uspace_entry);172 userspace_asm( ((uintptr_t)kernel_uarg->uspace_stack +173 kernel_uarg->uspace_stack_size ),174 (uintptr_t)kernel_uarg->uspace_uarg,175 (uintptr_t)kernel_uarg->uspace_entry);169 cp0_epc_write(kernel_uarg->uspace_entry); 170 userspace_asm(kernel_uarg->uspace_stack + 171 kernel_uarg->uspace_stack_size, 172 kernel_uarg->uspace_uarg, 173 kernel_uarg->uspace_entry); 176 174 177 175 while (true)
Note:
See TracChangeset
for help on using the changeset viewer.
