Skip to content
Snippets Groups Projects
Commit ea8be4a6 authored by Poonam Aggrwal's avatar Poonam Aggrwal Committed by Tom Rix
Browse files

ppc/85xx,86xx: Handling Unknown SOC version


Incase the system is detected with Unknown SVR, let the system boot
with a default value and a proper message.

Now with dynamic detection of SOC properties from SVR, this is necessary
to prevent a crash.

Signed-off-by: default avatarPoonam Aggrwal <poonam.aggrwal@freescale.com>
Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
parent 865f24dc
No related branches found
No related tags found
No related merge requests found
...@@ -69,13 +69,9 @@ int checkcpu (void) ...@@ -69,13 +69,9 @@ int checkcpu (void)
cpu = gd->cpu; cpu = gd->cpu;
if (cpu->name) { puts(cpu->name);
puts(cpu->name); if (IS_E_PROCESSOR(svr))
if (IS_E_PROCESSOR(svr)) puts("E");
puts("E");
} else {
puts("Unknown");
}
printf(", Version: %d.%d, (0x%08x)\n", major, minor, svr); printf(", Version: %d.%d, (0x%08x)\n", major, minor, svr);
......
...@@ -65,10 +65,7 @@ checkcpu(void) ...@@ -65,10 +65,7 @@ checkcpu(void)
cpu = gd->cpu; cpu = gd->cpu;
if (cpu->name) puts(cpu->name);
puts(cpu->name);
else
puts("Unknown");
printf(", Version: %d.%d, (0x%08x)\n", major, minor, svr); printf(", Version: %d.%d, (0x%08x)\n", major, minor, svr);
puts("Core: "); puts("Core: ");
......
...@@ -79,6 +79,8 @@ struct cpu_type cpu_type_list [] = { ...@@ -79,6 +79,8 @@ struct cpu_type cpu_type_list [] = {
#endif #endif
}; };
struct cpu_type cpu_type_unknown = CPU_TYPE_ENTRY(Unknown, Unknown, 1);
struct cpu_type *identify_cpu(u32 ver) struct cpu_type *identify_cpu(u32 ver)
{ {
int i; int i;
...@@ -86,8 +88,7 @@ struct cpu_type *identify_cpu(u32 ver) ...@@ -86,8 +88,7 @@ struct cpu_type *identify_cpu(u32 ver)
if (cpu_type_list[i].soc_ver == ver) if (cpu_type_list[i].soc_ver == ver)
return &cpu_type_list[i]; return &cpu_type_list[i];
} }
return &cpu_type_unknown;
return NULL;
} }
int cpu_numcores() { int cpu_numcores() {
......
...@@ -1034,6 +1034,8 @@ ...@@ -1034,6 +1034,8 @@
#define SVR_8641 0x809000 #define SVR_8641 0x809000
#define SVR_8641D 0x809001 #define SVR_8641D 0x809001
#define SVR_Unknown 0xFFFFFF
#define _GLOBAL(n)\ #define _GLOBAL(n)\
.globl n;\ .globl n;\
n: n:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment