aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Cruse <mcruse@definium.net>2007-07-30 16:29:29 +1000
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-30 10:52:09 -0700
commitb8a94b3dece0cdfdb42460bab28c454f71d3fa1d (patch)
treecc6d3fc91dc7dd0f7222accd1faf6a51aca51579
parentclean up reading of ICR register in FEC driver (diff)
setup and detect 2nd phy on MCF5275 in FEC driver
Added code to recognize the second interface on M5275 boards. Signed-off-by: Greg Ungerer <gerg@uclinux.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/net/fec.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/drivers/net/fec.c b/drivers/net/fec.c
index ff7e449ad573..4e8df910c00d 100644
--- a/drivers/net/fec.c
+++ b/drivers/net/fec.c
@@ -1427,6 +1427,29 @@ static void __inline__ fec_request_intrs(struct net_device *dev)
*gpio_pehlpar = 0xc0;
}
#endif
+
+#if defined(CONFIG_M527x)
+ /* Set up gpio outputs for MII lines */
+ {
+ volatile u8 *gpio_par_fec;
+ volatile u16 *gpio_par_feci2c;
+
+ gpio_par_feci2c = (volatile u16 *)(MCF_IPSBAR + 0x100082);
+ /* Set up gpio outputs for FEC0 MII lines */
+ gpio_par_fec = (volatile u8 *)(MCF_IPSBAR + 0x100078);
+
+ *gpio_par_feci2c |= 0x0f00;
+ *gpio_par_fec |= 0xc0;
+
+#if defined(CONFIG_FEC2)
+ /* Set up gpio outputs for FEC1 MII lines */
+ gpio_par_fec = (volatile u8 *)(MCF_IPSBAR + 0x100079);
+
+ *gpio_par_feci2c |= 0x00a0;
+ *gpio_par_fec |= 0xc0;
+#endif /* CONFIG_FEC2 */
+ }
+#endif /* CONFIG_M527x */
}
static void __inline__ fec_set_mii(struct net_device *dev, struct fec_enet_private *fep)