From 66115a37444350b166384ae8be95639aef5a5af4 Mon Sep 17 00:00:00 2001 From: iabdalkader Date: Sun, 6 Jun 2021 21:49:40 +0200 Subject: [PATCH] stm32/eth: Fix eth_link_status function to use correct BSR bit. Fixes #7346. --- ports/stm32/eth.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/ports/stm32/eth.c b/ports/stm32/eth.c index 30f8a1014e..79165e1191 100644 --- a/ports/stm32/eth.c +++ b/ports/stm32/eth.c @@ -791,11 +791,10 @@ int eth_link_status(eth_t *self) { return 2; // link no-ip; } } else { - int s = eth_phy_read(0) | eth_phy_read(0x10) << 16; - if (s == 0) { - return 0; // link down + if (eth_phy_read(PHY_BSR) & PHY_BSR_LINK_STATUS) { + return 1; // link up } else { - return 1; // link join + return 0; // link down } } }