gianfar: Exclude PPC specific errata handling from ARM builds
authorClaudiu Manoil <claudiu.manoil@freescale.com>
Tue, 7 Oct 2014 07:44:32 +0000 (10:44 +0300)
committerDavid S. Miller <davem@davemloft.net>
Thu, 9 Oct 2014 05:40:37 +0000 (01:40 -0400)
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: Claudiu Manoil <claudiu.manoil@freescale.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/freescale/gianfar.c

index a488105ec51d0ad43a2014a2309cde7a17a62626..37e060478630bc3f54852e7457bdfeffeb4ec678 100644 (file)
 #include <linux/net_tstamp.h>
 
 #include <asm/io.h>
+#ifdef CONFIG_PPC
 #include <asm/reg.h>
 #include <asm/mpc85xx.h>
+#endif
 #include <asm/irq.h>
 #include <asm/uaccess.h>
 #include <linux/module.h>
@@ -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)
 {
        unsigned int pvr = mfspr(SPRN_PVR);
@@ -1095,6 +1098,7 @@ static void __gfar_detect_errata_85xx(struct gfar_private *priv)
            ((SVR_SOC_VER(svr) == SVR_P2010) && (SVR_REV(svr) < 0x20)))
                priv->errata |= GFAR_ERRATA_76; /* aka eTSEC 20 */
 }
+#endif
 
 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 */
        priv->errata |= GFAR_ERRATA_A002;
 
+#ifdef CONFIG_PPC
        if (pvr_version_is(PVR_VER_E500V1) || pvr_version_is(PVR_VER_E500V2))
                __gfar_detect_errata_85xx(priv);
        else /* non-mpc85xx parts, i.e. e300 core based */
                __gfar_detect_errata_83xx(priv);
+#endif
 
        if (priv->errata)
                dev_info(dev, "enabled errata workarounds, flags: 0x%x\n",