[RFC] [PATCH] PowerPC: Workaround for the 440EP(x)/GR(x) processors identical PVR issue.

Benjamin Herrenschmidt benh at kernel.crashing.org
Fri Oct 26 06:44:11 EST 2007


On Thu, 2007-10-25 at 22:16 +0400, Valentine Barshak wrote:
> PowerPC 440EP(x) 440GR(x) processors have the same PVR values, since
> they have identical cores. However, FPU is not supported on GR(x) and
> enabling APU instruction broadcast in the CCR0 register (to enable FPU)
> may cause unpredictable results. There's no safe way to detect FPU
> support at runtime. This patch provides a workarund for the issue.
> We use a POWER6 "logical PVR approach". First, we identify all EP(x)
> and GR(x) processors as GR(x) ones (which is safe). Then we check 
> the device tree cpu path. If we have a EP(x) processor entry,
> we call identify_cpu again with PVR | 0x8. This bit is always 0
> in the real PVR. This way we enable FPU only for 440EP(x).
> 
> Signed-off-by: Valentine Barshak <vbarshak at ru.mvista.com>

Why not just or-in the FPU feature bit ?

Ben.





More information about the Linuxppc-dev mailing list