Commit d6ef0bcc authored by Claudiu Manoil's avatar Claudiu Manoil Committed by David S. Miller

gianfar: Exclude PPC specific errata handling from ARM builds

This excludes the PPC specific instructions for PPC based SoC
(MPC85xx family) version identification from ARM builds.
The PPC specific macro mfspr() from asm/reg.h is not defined
by the ARM architecture.
Signed-off-by: default avatarClaudiu Manoil <claudiu.manoil@freescale.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent fd31a952
...@@ -88,8 +88,10 @@ ...@@ -88,8 +88,10 @@
#include <linux/net_tstamp.h> #include <linux/net_tstamp.h>
#include <asm/io.h> #include <asm/io.h>
#ifdef CONFIG_PPC
#include <asm/reg.h> #include <asm/reg.h>
#include <asm/mpc85xx.h> #include <asm/mpc85xx.h>
#endif
#include <asm/irq.h> #include <asm/irq.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include <linux/module.h> #include <linux/module.h>
...@@ -1063,6 +1065,7 @@ static void gfar_init_filer_table(struct gfar_private *priv) ...@@ -1063,6 +1065,7 @@ static void gfar_init_filer_table(struct gfar_private *priv)
} }
} }
#ifdef CONFIG_PPC
static void __gfar_detect_errata_83xx(struct gfar_private *priv) static void __gfar_detect_errata_83xx(struct gfar_private *priv)
{ {
unsigned int pvr = mfspr(SPRN_PVR); unsigned int pvr = mfspr(SPRN_PVR);
...@@ -1095,6 +1098,7 @@ static void __gfar_detect_errata_85xx(struct gfar_private *priv) ...@@ -1095,6 +1098,7 @@ static void __gfar_detect_errata_85xx(struct gfar_private *priv)
((SVR_SOC_VER(svr) == SVR_P2010) && (SVR_REV(svr) < 0x20))) ((SVR_SOC_VER(svr) == SVR_P2010) && (SVR_REV(svr) < 0x20)))
priv->errata |= GFAR_ERRATA_76; /* aka eTSEC 20 */ priv->errata |= GFAR_ERRATA_76; /* aka eTSEC 20 */
} }
#endif
static void gfar_detect_errata(struct gfar_private *priv) static void gfar_detect_errata(struct gfar_private *priv)
{ {
...@@ -1103,10 +1107,12 @@ static void gfar_detect_errata(struct gfar_private *priv) ...@@ -1103,10 +1107,12 @@ static void gfar_detect_errata(struct gfar_private *priv)
/* no plans to fix */ /* no plans to fix */
priv->errata |= GFAR_ERRATA_A002; priv->errata |= GFAR_ERRATA_A002;
#ifdef CONFIG_PPC
if (pvr_version_is(PVR_VER_E500V1) || pvr_version_is(PVR_VER_E500V2)) if (pvr_version_is(PVR_VER_E500V1) || pvr_version_is(PVR_VER_E500V2))
__gfar_detect_errata_85xx(priv); __gfar_detect_errata_85xx(priv);
else /* non-mpc85xx parts, i.e. e300 core based */ else /* non-mpc85xx parts, i.e. e300 core based */
__gfar_detect_errata_83xx(priv); __gfar_detect_errata_83xx(priv);
#endif
if (priv->errata) if (priv->errata)
dev_info(dev, "enabled errata workarounds, flags: 0x%x\n", dev_info(dev, "enabled errata workarounds, flags: 0x%x\n",
......
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