summaryrefslogtreecommitdiff
path: root/drivers/net/phy/sfp-bus.c
diff options
context:
space:
mode:
authorSerge Semin <fancer.lancer@gmail.com>2023-08-16 21:06:52 +0300
committerDavid S. Miller <davem@davemloft.net>2023-08-19 12:41:33 +0100
commit2572ce62415cf3b632391091447252e2661ed520 (patch)
treed5138d4ea16c23b3c5352b88603f3838dd9d0cae /drivers/net/phy/sfp-bus.c
parente94b590abfff2cdbf0bdaa7d9904364c8d480af5 (diff)
net: mdio: mdio-bitbang: Fix C45 read/write protocol
Based on the original code semantic in case of Clause 45 MDIO, the address command is supposed to be followed by the command sending the MMD address, not the CSR address. The commit 002dd3de097c ("net: mdio: mdio-bitbang: Separate C22 and C45 transactions") has erroneously broken that. So most likely due to an unfortunate variable name it switched the code to sending the CSR address. In our case it caused the protocol malfunction so the read operation always failed with the turnaround bit always been driven to one by PHY instead of zero. Fix that by getting back the correct behaviour: sending MMD address command right after the regular address command. Fixes: 002dd3de097c ("net: mdio: mdio-bitbang: Separate C22 and C45 transactions") Signed-off-by: Serge Semin <fancer.lancer@gmail.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/phy/sfp-bus.c')
0 files changed, 0 insertions, 0 deletions