summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libcpu/powerpc/shared/include/cpuIdent.c
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libcpu/powerpc/shared/include/cpuIdent.c')
-rw-r--r--c/src/lib/libcpu/powerpc/shared/include/cpuIdent.c25
1 files changed, 22 insertions, 3 deletions
diff --git a/c/src/lib/libcpu/powerpc/shared/include/cpuIdent.c b/c/src/lib/libcpu/powerpc/shared/include/cpuIdent.c
index ddb7775d89..5e4a78848a 100644
--- a/c/src/lib/libcpu/powerpc/shared/include/cpuIdent.c
+++ b/c/src/lib/libcpu/powerpc/shared/include/cpuIdent.c
@@ -26,10 +26,29 @@ SPR_RO(PVR)
ppc_cpu_id_t current_ppc_cpu = PPC_UNKNOWN;
ppc_cpu_revision_t current_ppc_revision = 0xff;
+char *get_ppc_cpu_type_name(ppc_cpu_id_t cpu)
+{
+ switch (cpu) {
+ case PPC_601: return "MPC601";
+ case PPC_603: return "MPC603";
+ case PPC_603ev: return "MPC603ev";
+ case PPC_604: return "MPC604";
+ case PPC_750: return "MPC750";
+ case PPC_7400: return "MPC7400";
+ case PPC_604e: return "MPC604e";
+ case PPC_604r: return "MPC604r";
+ case PPC_620: return "MPC620";
+ case PPC_860: return "MPC860";
+ case PPC_8260: return "MPC8260";
+ default:
+ printk("Unknown CPU value of 0x%x. Please add it to <libcpu/powerpc/shared/cpu.h>\n", cpu );
+ }
+ return "UNKNOWN";
+}
+
ppc_cpu_id_t get_ppc_cpu_type()
{
unsigned int pvr = (_read_PVR() >> 16);
-
current_ppc_cpu = (ppc_cpu_id_t) pvr;
switch (pvr) {
case PPC_601:
@@ -37,19 +56,19 @@ ppc_cpu_id_t get_ppc_cpu_type()
case PPC_603ev:
case PPC_604:
case PPC_750:
+ case PPC_7400:
case PPC_604e:
case PPC_604r:
case PPC_620:
case PPC_860:
case PPC_8260:
- current_ppc_cpu = (ppc_cpu_id_t) pvr;
return current_ppc_cpu;
default:
printk("Unknown PVR value of 0x%x. Please add it to <libcpu/powerpc/shared/cpu.h>\n", pvr );
return PPC_UNKNOWN;
}
-
}
+
ppc_cpu_revision_t get_ppc_cpu_revision()
{
ppc_cpu_revision_t rev = (ppc_cpu_revision_t) (_read_PVR() & 0xffff);