diff options
Diffstat (limited to 'src/arch/ppc/lib/cpu.c')
-rw-r--r-- | src/arch/ppc/lib/cpu.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/arch/ppc/lib/cpu.c b/src/arch/ppc/lib/cpu.c new file mode 100644 index 0000000000..49b230c871 --- /dev/null +++ b/src/arch/ppc/lib/cpu.c @@ -0,0 +1,36 @@ +#include <console/console.h> +#include <mem.h> +#include <arch/io.h> +#include <string.h> +#include <cpu/cpu.h> +#include <cpu/ppc/cpuid.h> + +static void cache_on(struct mem_range *mem) +{ +} + +static void interrupts_on() +{ +} + +unsigned long cpu_initialize(struct mem_range *mem) +{ + /* Because we busy wait at the printk spinlock. + * It is important to keep the number of printed messages + * from secondary cpus to a minimum, when debugging is + * disabled. + */ + unsigned long processor_id = this_processors_id(); + printk_notice("Initializing CPU #%d\n", processor_id); + + /* Turn on caching if we haven't already */ + cache_on(mem); + + display_cpuid(); + + interrupts_on(); + + printk_info("CPU #%d Initialized\n", processor_id); + return processor_id; +} + |