summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorPhilippe Schenker <philippe.schenker@toradex.com>2020-03-04 18:49:45 +0100
committerDenys Drozdov <denys.drozdov@toradex.com>2021-01-08 19:42:06 +0200
commit807d6b69072fbe0fba70a5f589ac594407631815 (patch)
tree261d7c53ffb31bdc433b719358ef8df4cc5633e2 /drivers
parent30bf9d3928ab9935c92706c5136185f670aadd06 (diff)
net: fec: Add possibility to enable TXC delay
Related-to: ELB-1299 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com> (cherry picked from commit f53846c29f76ccee0141f6902703bb6855b14b6a) (cherry picked from commit 29884c54767bf04be3fc662f5f4aec227372d87e)
Diffstat (limited to 'drivers')
-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 d00df87a47..d91353d51c 100644
--- a/drivers/net/fec_mxc.c
+++ b/drivers/net/fec_mxc.c
@@ -504,6 +504,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 18f7c727db..bec5f6698d 100644
--- a/drivers/net/fec_mxc.h
+++ b/drivers/net/fec_mxc.h
@@ -188,6 +188,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