summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilippe Schenker <philippe.schenker@toradex.com>2020-03-04 18:49:45 +0100
committerPhilippe Schenker <philippe.schenker@toradex.com>2020-03-05 13:30:48 +0100
commitf53846c29f76ccee0141f6902703bb6855b14b6a (patch)
tree0e3d7499f35de460906b26a301e1e0882b2fee66
parenta0ac1f6ca5d5eaf7b7b9833f5438c78ee11d9474 (diff)
net: fec: Add possibility to enable TXC delay
Related-to: ELB-1299 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
-rw-r--r--drivers/net/fec_mxc.c5
-rw-r--r--drivers/net/fec_mxc.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c
index aa52027dc2..011f4c6180 100644
--- a/drivers/net/fec_mxc.c
+++ b/drivers/net/fec_mxc.c
@@ -458,6 +458,11 @@ static int fec_open(struct eth_device *edev)
writel(readl(&fec->eth->ecntrl) | FEC_ECNTRL_ETHER_EN,
&fec->eth->ecntrl);
+#ifdef FEC_ENET_ENABLE_TXC_DELAY
+ writel(readl(&fec->eth->ecntrl) | FEC_ECNTRL_TXC_DLY,
+ &fec->eth->ecntrl);
+#endif
+
#if defined(CONFIG_MX25) || defined(CONFIG_MX53) || defined(CONFIG_MX6SL)
udelay(100);
diff --git a/drivers/net/fec_mxc.h b/drivers/net/fec_mxc.h
index d7d2f0d3aa..ccb6e0c9aa 100644
--- a/drivers/net/fec_mxc.h
+++ b/drivers/net/fec_mxc.h
@@ -187,6 +187,7 @@ struct ethernet_regs {
#define FEC_ECNTRL_ETHER_EN 0x00000002 /* enable the FEC */
#define FEC_ECNTRL_SPEED 0x00000020
#define FEC_ECNTRL_DBSWAP 0x00000100
+#define FEC_ECNTRL_TXC_DLY 0x00010000 /* TXC Delayed */
#define FEC_X_WMRK_STRFWD 0x00000100