]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: sfp: return the number of written bytes for smbus single byte access
authorMaxime Chevallier <maxime.chevallier@bootlin.com>
Mon, 5 Jan 2026 15:18:39 +0000 (16:18 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 17 Jan 2026 15:35:28 +0000 (16:35 +0100)
[ Upstream commit 13ff3e724207f579d3c814ee05516fefcb4f32e8 ]

We expect the SFP write accessors to return the number of written bytes.
We fail to do so for single-byte smbus accesses, which may cause errors
when setting a module's high-power state and for some cotsworks modules.

Let's return the amount of written bytes, as expected.

Fixes: 7662abf4db94 ("net: phy: sfp: Add support for SMBus module access")
Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/20260105151840.144552-1-maxime.chevallier@bootlin.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/phy/sfp.c

index 0401fa6b24d25747452ce26c8ef4a8a95c02dcac..6b4dd906b804f4627d675eb94a5aa8f78b897ad3 100644 (file)
@@ -763,7 +763,7 @@ static int sfp_smbus_byte_write(struct sfp *sfp, bool a2, u8 dev_addr,
                dev_addr++;
        }
 
-       return 0;
+       return data - (u8 *)buf;
 }
 
 static int sfp_i2c_configure(struct sfp *sfp, struct i2c_adapter *i2c)