This patch add support for half duplex on MDI chips.

Signed-off-by: Corcodel Marian <a...@marian1000.go.ro>
---
 drivers/net/ethernet/realtek/r8169.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/realtek/r8169.c 
b/drivers/net/ethernet/realtek/r8169.c
index 77c5efb..7f6fb1f 100644
--- a/drivers/net/ethernet/realtek/r8169.c
+++ b/drivers/net/ethernet/realtek/r8169.c
@@ -1713,8 +1713,13 @@ static int rtl8169_set_speed_xmii(struct net_device *dev,
                else
                        goto out;
 
-               if (duplex == DUPLEX_FULL)
+               if (duplex == DUPLEX_FULL) {
                        bmcr |= BMCR_FULLDPLX;
+               } else if (duplex == DUPLEX_HALF) {
+                               bmcr |= ~BMCR_FULLDPLX;
+               } else {
+                       goto out;
+                }
        }
 
        rtl_writephy(tp, MII_BMCR, bmcr);
-- 
2.1.4

Reply via email to