Commit 3d1d662e authored by Josh Boyer's avatar Josh Boyer

[POWERPC] 4xx: Use virtual PVR value to init FPU on arch/ppc 440EP

This fixes arch/ppc 440EP platforms to setup the FPU correctly.  A virtual
PVR is used, as 440GR platforms share an identical hardware PVR value and do
not have an FPU.
Signed-off-by: default avatarJosh Boyer <jwboyer@linux.vnet.ibm.com>
parent b8b799a4
...@@ -312,7 +312,14 @@ early_init(int r3, int r4, int r5) ...@@ -312,7 +312,14 @@ early_init(int r3, int r4, int r5)
* Identify the CPU type and fix up code sections * Identify the CPU type and fix up code sections
* that depend on which cpu we have. * that depend on which cpu we have.
*/ */
#if defined(CONFIG_440EP) && defined(CONFIG_PPC_FPU)
/* We pass the virtual PVR here for 440EP as 440EP and 440GR have
* identical PVRs and there is no reliable way to check for the FPU
*/
spec = identify_cpu(offset, (mfspr(SPRN_PVR) | 0x8));
#else
spec = identify_cpu(offset, mfspr(SPRN_PVR)); spec = identify_cpu(offset, mfspr(SPRN_PVR));
#endif
do_feature_fixups(spec->cpu_features, do_feature_fixups(spec->cpu_features,
PTRRELOC(&__start___ftr_fixup), PTRRELOC(&__start___ftr_fixup),
PTRRELOC(&__stop___ftr_fixup)); PTRRELOC(&__stop___ftr_fixup));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment