Rev 1132 | Rev 1222 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1132 | Rev 1220 | ||
---|---|---|---|
Line 30... | Line 30... | ||
30 | #include <arch/boot/boot.h> |
30 | #include <arch/boot/boot.h> |
31 | #include <arch/console.h> |
31 | #include <arch/console.h> |
32 | #include <arch/drivers/cuda.h> |
32 | #include <arch/drivers/cuda.h> |
33 | #include <arch/mm/memory_init.h> |
33 | #include <arch/mm/memory_init.h> |
34 | #include <arch/interrupt.h> |
34 | #include <arch/interrupt.h> |
- | 35 | #include <userspace.h> |
|
- | 36 | #include <proc/uarg.h> |
|
35 | 37 | ||
36 | bootinfo_t bootinfo; |
38 | bootinfo_t bootinfo; |
37 | 39 | ||
38 | void arch_pre_mm_init(void) |
40 | void arch_pre_mm_init(void) |
39 | { |
41 | { |
Line 43... | Line 45... | ||
43 | /* Start decrementer */ |
45 | /* Start decrementer */ |
44 | start_decrementer(); |
46 | start_decrementer(); |
45 | 47 | ||
46 | ppc32_console_init(); |
48 | ppc32_console_init(); |
47 | cuda_init(); |
49 | cuda_init(); |
- | 50 | ||
- | 51 | /* Setup usermode */ |
|
- | 52 | init.cnt = 1; |
|
- | 53 | init.tasks[0].addr = PA2KA(bootinfo.init.addr); |
|
- | 54 | init.tasks[0].size = bootinfo.init.size; |
|
48 | } |
55 | } |
49 | 56 | ||
50 | void arch_post_mm_init(void) |
57 | void arch_post_mm_init(void) |
51 | { |
58 | { |
52 | } |
59 | } |
Line 62... | Line 69... | ||
62 | 69 | ||
63 | void calibrate_delay_loop(void) |
70 | void calibrate_delay_loop(void) |
64 | { |
71 | { |
65 | } |
72 | } |
66 | 73 | ||
- | 74 | void userspace(uspace_arg_t *kernel_uarg) |
|
- | 75 | { |
|
- | 76 | userspace_asm((__address) kernel_uarg->uspace_uarg, (__address) kernel_uarg->uspace_stack, (__address) kernel_uarg->uspace_entry); |
|
- | 77 | ||
- | 78 | /* Unreachable */ |
|
- | 79 | for (;;) |
|
- | 80 | ; |
|
- | 81 | } |