summaryrefslogtreecommitdiff
path: root/drivers/net/mxc_fec.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/mxc_fec.c')
-rw-r--r--drivers/net/mxc_fec.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/net/mxc_fec.c b/drivers/net/mxc_fec.c
index 1a9f53f..314496e 100644
--- a/drivers/net/mxc_fec.c
+++ b/drivers/net/mxc_fec.c
@@ -336,12 +336,21 @@ static void setFecDuplexSpeed(volatile fec_t *fecp, unsigned char addr,
if ((dup_spd >> 16) == FULL) {
/* Set maximum frame length */
+#ifdef CONFIG_RMII
+ fecp->rcr = FEC_RCR_MAX_FL(PKT_MAXBUF_SIZE) | FEC_RCR_RMII_MODE;
+#else
fecp->rcr = FEC_RCR_MAX_FL(PKT_MAXBUF_SIZE) | FEC_RCR_MII_MODE;
+#endif
fecp->tcr = FEC_TCR_FDEN;
} else {
/* Half duplex mode */
+#ifdef CONFIG_RMII
fecp->rcr = FEC_RCR_MAX_FL(PKT_MAXBUF_SIZE) |
- FEC_RCR_MII_MODE | FEC_RCR_DRT;
+ FEC_RCR_RMII_MODE | FEC_RCR_DRT;
+#else
+ fecp->rcr = FEC_RCR_MAX_FL(PKT_MAXBUF_SIZE) |
+ FEC_RCR_MII_MODE | FEC_RCR_DRT;
+#endif
fecp->tcr &= ~FEC_TCR_FDEN;
}