m68knommu: some boards use fixed phy for FEC ethernet
authorGreg Ungerer <gerg@uclinux.org>
Tue, 12 Oct 2010 02:24:49 +0000 (12:24 +1000)
committerGreg Ungerer <gerg@uclinux.org>
Fri, 22 Oct 2010 05:07:54 +0000 (15:07 +1000)
Define a fixed phy setup for use on boarts that directly connect the
FEC ethernet controller to a switch.

Signed-off-by: Greg Ungerer <gerg@uclinux.org>
arch/m68knommu/platform/5272/config.c

index 59278c0887d04de431d46049924f920170328d6a..65bb582734e1faea91d2a707e4107a55bbd90145 100644 (file)
@@ -13,6 +13,8 @@
 #include <linux/param.h>
 #include <linux/init.h>
 #include <linux/io.h>
+#include <linux/phy.h>
+#include <linux/phy_fixed.h>
 #include <asm/machdep.h>
 #include <asm/coldfire.h>
 #include <asm/mcfsim.h>
@@ -148,9 +150,23 @@ void __init config_BSP(char *commandp, int size)
 
 /***************************************************************************/
 
+/*
+ * Some 5272 based boards have the FEC ethernet diectly connected to
+ * an ethernet switch. In this case we need to use the fixed phy type,
+ * and we need to declare it early in boot.
+ */
+static struct fixed_phy_status nettel_fixed_phy_status __initdata = {
+       .link   = 1,
+       .speed  = 100,
+       .duplex = 0,
+};
+
+/***************************************************************************/
+
 static int __init init_BSP(void)
 {
        m5272_uarts_init();
+       fixed_phy_add(PHY_POLL, 0, &nettel_fixed_phy_status);
        platform_add_devices(m5272_devices, ARRAY_SIZE(m5272_devices));
        return 0;
 }