Changes in kernel/arch/ppc32/src/ppc32.c [eae4e8f:3a2f8aa] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ppc32/src/ppc32.c
reae4e8f r3a2f8aa 39 39 #include <genarch/kbrd/kbrd.h> 40 40 #include <arch/interrupt.h> 41 #include <interrupt.h> 41 42 #include <genarch/fb/fb.h> 42 43 #include <genarch/fb/visuals.h> … … 47 48 #include <proc/uarg.h> 48 49 #include <console/console.h> 50 #include <sysinfo/sysinfo.h> 49 51 #include <ddi/irq.h> 50 52 #include <arch/drivers/pic.h> … … 58 60 59 61 bootinfo_t bootinfo; 62 63 static cir_t pic_cir; 64 static void *pic_cir_arg; 60 65 61 66 /** Performs ppc32-specific initialization before main_bsp() is called. */ … … 186 191 if (assigned_address) { 187 192 /* Initialize PIC */ 188 cir_t cir; 189 void *cir_arg; 190 pic_init(assigned_address[0].addr, PAGE_SIZE, &cir, &cir_arg); 191 193 pic_init(assigned_address[0].addr, PAGE_SIZE, &pic_cir, 194 &pic_cir_arg); 195 192 196 #ifdef CONFIG_MAC_KBD 193 197 uintptr_t pa = assigned_address[0].addr + 0x16000; … … 201 205 /* Initialize I/O controller */ 202 206 cuda_instance_t *cuda_instance = 203 cuda_init(cuda, IRQ_CUDA, cir,cir_arg);207 cuda_init(cuda, IRQ_CUDA, pic_cir, pic_cir_arg); 204 208 if (cuda_instance) { 205 209 kbrd_instance_t *kbrd_instance = kbrd_init(); … … 211 215 } 212 216 } 217 218 /* 219 * This is the necessary evil until the userspace driver is entirely 220 * self-sufficient. 221 */ 222 sysinfo_set_item_val("cuda", NULL, true); 223 sysinfo_set_item_val("cuda.inr", NULL, IRQ_CUDA); 224 sysinfo_set_item_val("cuda.address.physical", NULL, pa); 225 sysinfo_set_item_val("cuda.address.kernel", NULL, 226 (uintptr_t) cuda); 213 227 #endif 214 228 } … … 216 230 /* Consider only a single device for now */ 217 231 return false; 232 } 233 234 void irq_initialize_arch(irq_t *irq) 235 { 236 irq->cir = pic_cir; 237 irq->cir_arg = pic_cir_arg; 238 irq->preack = true; 218 239 } 219 240
Note:
See TracChangeset
for help on using the changeset viewer.