Browse Source

m68knommu: some boards use fixed phy for FEC ethernet

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>
Greg Ungerer 14 years ago
parent
commit
41a2159b5b
1 changed files with 16 additions and 0 deletions
  1. 16 0
      arch/m68knommu/platform/5272/config.c

+ 16 - 0
arch/m68knommu/platform/5272/config.c

@@ -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;
 }