[U-Boot] [PATCH] net/designware: do explicit port selection for 1Gb mode

Alexey Brodkin Alexey.Brodkin at synopsys.com
Wed Dec 23 17:46:32 CET 2015


Current implementation only sets "port select" bit for non-1Gb mode.
That works fine if GMAC has just exited reset state but we may as well
change connection mode in runtime. Then we'll need to reprogram GMAC for
that new mode of operation and if previous mode was 10 or 100 Mb and new
one is 1 Gb we'll need to reset port mode bit.

Signed-off-by: Alexey Brodkin <abrodkin at synopsys.com>
Cc: Bin Meng <bmeng.cn at gmail.com>
Cc: Joe Hershberger <joe.hershberger at ni.com>
Cc: Sonic Zhang <sonic.zhang at analog.com>
cc: Simon Glass <sjg at chromium.org>
---
 drivers/net/designware.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/net/designware.c b/drivers/net/designware.c
index a6c39c3..58c6d36 100644
--- a/drivers/net/designware.c
+++ b/drivers/net/designware.c
@@ -200,6 +200,8 @@ static void dw_adjust_link(struct eth_mac_regs *mac_p,
 
 	if (phydev->speed != 1000)
 		conf |= MII_PORTSELECT;
+	else
+		conf &= ~MII_PORTSELECT;
 
 	if (phydev->speed == 100)
 		conf |= FES_100;
-- 
2.4.3



More information about the U-Boot mailing list