]> git.ipfire.org Git - thirdparty/kernel/linux.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)
committerJakub Kicinski <kuba@kernel.org>
Wed, 7 Jan 2026 01:13:34 +0000 (17:13 -0800)
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>
drivers/net/phy/sfp.c

index 6166e91963644d4e6c2cf012d329d41a44530ccb..84bef5099dda6f49d22c5c69fc6d94f9d6fa61a5 100644 (file)
@@ -765,7 +765,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)