summaryrefslogtreecommitdiffstats
path: root/arch/m68knommu/platform/5272/config.c
diff options
context:
space:
mode:
authorGreg Ungerer <gerg@uclinux.org>2010-10-12 04:24:49 +0200
committerGreg Ungerer <gerg@uclinux.org>2010-10-22 07:07:54 +0200
commit41a2159b5b662e74a85b4824e3517f2397cc5867 (patch)
tree7c252cbdb654c49fcdd965fe011b45801ce4fff3 /arch/m68knommu/platform/5272/config.c
parentm68knommu: support the external GPIO based interrupts of the 5272 (diff)
downloadlinux-41a2159b5b662e74a85b4824e3517f2397cc5867.tar.xz
linux-41a2159b5b662e74a85b4824e3517f2397cc5867.zip
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>
Diffstat (limited to 'arch/m68knommu/platform/5272/config.c')
-rw-r--r--arch/m68knommu/platform/5272/config.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/arch/m68knommu/platform/5272/config.c b/arch/m68knommu/platform/5272/config.c
index 59278c0887d0..65bb582734e1 100644
--- a/arch/m68knommu/platform/5272/config.c
+++ b/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;
}