Rev 3343 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 3343 | Rev 3742 | ||
|---|---|---|---|
| Line 92... | Line 92... | ||
| 92 | visual = VISUAL_RGB_0_8_8_8; |
92 | visual = VISUAL_RGB_0_8_8_8; |
| 93 | break; |
93 | break; |
| 94 | default: |
94 | default: |
| 95 | panic("Unsupported bits per pixel"); |
95 | panic("Unsupported bits per pixel"); |
| 96 | } |
96 | } |
| - | 97 | fb_properties_t prop = { |
|
| - | 98 | .addr = bootinfo.screen.addr, |
|
| - | 99 | .offset = 0, |
|
| - | 100 | .x = bootinfo.screen.width, |
|
| - | 101 | .y = bootinfo.screen.height, |
|
| 97 | fb_init(bootinfo.screen.addr, bootinfo.screen.width, bootinfo.screen.height, bootinfo.screen.scanline, visual); |
102 | .scan = bootinfo.screen.scanline, |
| - | 103 | .visual = visual, |
|
| - | 104 | }; |
|
| - | 105 | fb_init(&prop); |
|
| 98 | 106 | ||
| 99 | /* Initialize IRQ routing */ |
107 | /* Initialize IRQ routing */ |
| 100 | irq_init(IRQ_COUNT, IRQ_COUNT); |
108 | irq_init(IRQ_COUNT, IRQ_COUNT); |
| 101 | 109 | ||
| 102 | /* Initialize PIC */ |
110 | /* Initialize PIC */ |
| 103 | pic_init(bootinfo.keyboard.addr, PAGE_SIZE); |
111 | pic_init(bootinfo.keyboard.addr, PAGE_SIZE); |
| 104 | 112 | ||
| 105 | /* Initialize I/O controller */ |
113 | /* Initialize I/O controller */ |
| - | 114 | cuda_init(device_assign_devno(), |
|
| 106 | cuda_init(device_assign_devno(), bootinfo.keyboard.addr + 0x16000, 2 * PAGE_SIZE); |
115 | bootinfo.keyboard.addr + 0x16000, 2 * PAGE_SIZE); |
| 107 | 116 | ||
| 108 | /* Merge all zones to 1 big zone */ |
117 | /* Merge all zones to 1 big zone */ |
| 109 | zone_merge_all(); |
118 | zone_merge_all(); |
| 110 | } |
119 | } |
| 111 | } |
120 | } |
| Line 126... | Line 135... | ||
| 126 | { |
135 | { |
| 127 | } |
136 | } |
| 128 | 137 | ||
| 129 | void userspace(uspace_arg_t *kernel_uarg) |
138 | void userspace(uspace_arg_t *kernel_uarg) |
| 130 | { |
139 | { |
| 131 | userspace_asm((uintptr_t) kernel_uarg->uspace_uarg, (uintptr_t) kernel_uarg->uspace_stack + THREAD_STACK_SIZE - SP_DELTA, (uintptr_t) kernel_uarg->uspace_entry); |
140 | userspace_asm((uintptr_t) kernel_uarg->uspace_uarg, |
| - | 141 | (uintptr_t) kernel_uarg->uspace_stack + |
|
| - | 142 | THREAD_STACK_SIZE - SP_DELTA, |
|
| - | 143 | (uintptr_t) kernel_uarg->uspace_entry); |
|
| 132 | 144 | ||
| 133 | /* Unreachable */ |
145 | /* Unreachable */ |
| 134 | for (;;) |
146 | for (;;) |
| 135 | ; |
147 | ; |
| 136 | } |
148 | } |