Changes in kernel/arch/ppc32/src/ppc32.c [36df4109:20f8111] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ppc32/src/ppc32.c
r36df4109 r20f8111 33 33 */ 34 34 35 #include <config.h> 35 36 #include <arch.h> 36 #include <arch/arch.h>37 #include <config.h>38 37 #include <arch/boot/boot.h> 39 38 #include <genarch/drivers/via-cuda/cuda.h> … … 48 47 #include <mm/page.h> 49 48 #include <mm/km.h> 50 #include <time/clock.h>51 49 #include <abi/proc/uarg.h> 52 50 #include <console/console.h> … … 62 60 #define IRQ_CUDA 10 63 61 64 static void ppc32_pre_mm_init(void);65 static void ppc32_post_mm_init(void);66 static void ppc32_post_smp_init(void);67 68 arch_ops_t ppc32_ops = {69 .pre_mm_init = ppc32_pre_mm_init,70 .post_mm_init = ppc32_post_mm_init,71 .post_smp_init = ppc32_post_smp_init,72 };73 74 arch_ops_t *arch_ops = &ppc32_ops;75 76 62 bootinfo_t bootinfo; 77 63 … … 80 66 81 67 /** Performs ppc32-specific initialization before main_bsp() is called. */ 82 void ppc32_pre_main(bootinfo_t *bootinfo)68 void arch_pre_main(bootinfo_t *bootinfo) 83 69 { 84 70 /* Copy tasks map. */ … … 108 94 } 109 95 110 void ppc32_pre_mm_init(void)96 void arch_pre_mm_init(void) 111 97 { 112 98 /* Initialize dispatch table */ 113 99 interrupt_init(); 114 100 115 ofw_tree_node_t *cpus_node;116 ofw_tree_node_t *cpu_node;117 ofw_tree_property_t *freq_prop;118 119 cpus_node = ofw_tree_lookup("/cpus");120 if (!cpus_node)121 panic("Could not find cpus node.");122 123 cpu_node = cpus_node->child;124 if (!cpu_node)125 panic("Could not find first cpu.");126 127 freq_prop = ofw_tree_getprop(cpu_node, "timebase-frequency");128 if (!freq_prop)129 panic("Could not get frequency property.");130 131 uint32_t freq;132 freq = *((uint32_t *) freq_prop->value);133 134 101 /* Start decrementer */ 135 decrementer_start(freq / HZ);102 start_decrementer(); 136 103 } 137 104 … … 205 172 #endif 206 173 207 void ppc32_post_mm_init(void)174 void arch_post_mm_init(void) 208 175 { 209 176 if (config.cpu_active == 1) { … … 220 187 zone_merge_all(); 221 188 } 189 } 190 191 void arch_post_cpu_init(void) 192 { 193 } 194 195 void arch_pre_smp_init(void) 196 { 222 197 } 223 198 … … 278 253 } 279 254 280 void ppc32_post_smp_init(void)255 void arch_post_smp_init(void) 281 256 { 282 257 /* Currently the only supported platform for ppc32 is 'mac'. */
Note:
See TracChangeset
for help on using the changeset viewer.