PPC cpu stuff
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@872 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
parent
93247c0428
commit
88e467f38e
|
@ -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;
|
||||
}
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
/* $Id$ */
|
||||
/* Copyright 2000 AG Electronics Ltd. */
|
||||
/* This code is distributed without warranty under the GPL v2 (see COPYING) */
|
||||
|
||||
#include "ppc.h"
|
||||
#include "ppcreg.h"
|
||||
#include <console/console.h>
|
||||
|
||||
void display_cpuid(void)
|
||||
{
|
||||
unsigned type = __getpvr() >> 16;
|
||||
unsigned version = __getpvr() & 0xffff;
|
||||
const char *cpu_string = 0;
|
||||
switch(type) {
|
||||
case 1:
|
||||
cpu_string = "601";
|
||||
break;
|
||||
case 3:
|
||||
cpu_string = "603";
|
||||
break;
|
||||
case 4:
|
||||
cpu_string = "604";
|
||||
break;
|
||||
case 6:
|
||||
cpu_string = "603e";
|
||||
break;
|
||||
case 7:
|
||||
cpu_string = "603ev";
|
||||
break;
|
||||
case 8:
|
||||
cpu_string = "750";
|
||||
break;
|
||||
case 9:
|
||||
cpu_string = "604e";
|
||||
break;
|
||||
case 10:
|
||||
cpu_string = "604ev5 (MachV)";
|
||||
break;
|
||||
case 12:
|
||||
cpu_string = "7400";
|
||||
break;
|
||||
case 50:
|
||||
cpu_string = "821";
|
||||
break;
|
||||
case 80:
|
||||
cpu_string = "860";
|
||||
break;
|
||||
case 0x800c:
|
||||
cpu_string = "7410";
|
||||
break;
|
||||
}
|
||||
if (cpu_string)
|
||||
printk_info("PowerPC %s", cpu_string);
|
||||
else
|
||||
printk_info("PowerPC unknown (0x%x)", type);
|
||||
printk_info(" CPU, version %d.%d\n", version >> 8, version & 0xff);
|
||||
}
|
||||
|
Loading…
Reference in New Issue