This patch was already applied [1] but then removed. Instead, only the chunk
@@ -314,7 +343,7 @@ static u32 rtl9300_i2c_func(struct i2c_adapter *a) { return I2C_FUNC_SMBUS_QUICK | I2C_FUNC_SMBUS_BYTE | I2C_FUNC_SMBUS_BYTE_DATA | I2C_FUNC_SMBUS_WORD_DATA | - I2C_FUNC_SMBUS_BLOCK_DATA; + I2C_FUNC_SMBUS_BLOCK_DATA | I2C_FUNC_SMBUS_I2C_BLOCK; }
was added as part of a patch which has nothing to do with I2C_FUNC_SMBUS_I2C_BLOCK [2] and was never submitted like this [3].
I am therefore resubmitting this patch again with a patch that is removing the errornous I2C_FUNC_SMBUS_I2C_BLOCK from i2c-host-fixes.
Order:
* The first patch needs to be applied on top of i2c-host-fixes * after i2c-host-fixes (with this patch) is included in the i2c-host branch: - the second patch from this series - The patches 4-12 from Jonas [4] need to be applied on top of it in the i2c-host branch: + https://lore.kernel.org/r/20250831100457.3114-5-jelonek.jonas@gmail.com + https://lore.kernel.org/r/20250831100457.3114-6-jelonek.jonas@gmail.com + https://lore.kernel.org/r/20250831100457.3114-7-jelonek.jonas@gmail.com + https://lore.kernel.org/r/20250831100457.3114-8-jelonek.jonas@gmail.com + https://lore.kernel.org/r/20250831100457.3114-9-jelonek.jonas@gmail.com + https://lore.kernel.org/r/20250831100457.3114-10-jelonek.jonas@gmail.com + https://lore.kernel.org/r/20250831100457.3114-11-jelonek.jonas@gmail.com + https://lore.kernel.org/r/20250831100457.3114-12-jelonek.jonas@gmail.com + https://lore.kernel.org/r/20250831100457.3114-13-jelonek.jonas@gmail.com
[1] https://lore.kernel.org/r/a422shurtl3xrvnh2ieynqq2kw5awqnmall2wjdpozx336m26i... [2] https://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux.git/commit/... [3] https://lore.kernel.org/r/20250831100457.3114-4-jelonek.jonas@gmail.com [4] https://lore.kernel.org/r/20250831100457.3114-1-jelonek.jonas@gmail.com
Signed-off-by: Sven Eckelmann sven@narfation.org --- Changes in v7: - Split into two patches. One for i2c-host-fixes to remove the actually unsupported I2C_FUNC_SMBUS_I2C_BLOCK. The next one is for i2c-host and readds it with the correct code. - Link to v6: https://lore.kernel.org/r/20250926-i2c-rtl9300-multi-byte-v6-1-a2d7d8926105@...
Changes in v6: - drop all fixes patches (which were already applied) - drop rtl9300_i2c_func chunk which was incorrectly added by another commit [2] (but was not intended to be in there by the original patch [3] - Link to v5: https://lore.kernel.org/r/20250810-i2c-rtl9300-multi-byte-v5-0-cd9dca0db722@...
Changes in v5: - Simplify function/capability registration by using I2C_FUNC_SMBUS_I2C_BLOCK, thanks Jonas Jelonek - Link to v4: https://lore.kernel.org/r/20250809-i2c-rtl9300-multi-byte-v4-0-d71dd5eb6121@...
Changes in v4: - Provide only "write" examples for "i2c: rtl9300: Fix multi-byte I2C write" - drop the second initialization of vals in rtl9300_i2c_write() directly in the "Fix multi-byte I2C write" fix - indicate in target branch for each patch in PATCH prefix - minor commit message cleanups - Link to v3: https://lore.kernel.org/r/20250804-i2c-rtl9300-multi-byte-v3-0-e20607e1b28c@...
Changes in v3: - integrated patch https://lore.kernel.org/r/20250615235248.529019-1-alexguo1023@gmail.com to avoid conflicts in the I2C_SMBUS_BLOCK_DATA code - added Fixes and stable@vger.kernel.org to Alex Guo's patch - added Chris Packham's Reviewed-by/Acked-by - Link to v2: https://lore.kernel.org/r/20250803-i2c-rtl9300-multi-byte-v2-0-9b7b759fe2b6@...
Changes in v2: - add the missing transfer width and read length increase for the SMBus Write/Read - Link to v1: https://lore.kernel.org/r/20250802-i2c-rtl9300-multi-byte-v1-0-5f687e0098e2@...
--- Harshal Gohel (1): [i2c-host] i2c: rtl9300: Implement I2C block read and write
Sven Eckelmann (1): [i2c-host-fixes] i2c: rtl9300: Drop unsupported I2C_FUNC_SMBUS_BLOCK_DATA
drivers/i2c/busses/i2c-rtl9300.c | 35 ++++++++++++++++++++++++++++++++--- 1 file changed, 32 insertions(+), 3 deletions(-) --- base-commit: 217f92d91c9faeb6b78bd6205b3585944cbcb433 change-id: 20250802-i2c-rtl9300-multi-byte-edaa1fb0872c
Best regards,
While applying the patch for commit ede965fd555a ("i2c: rtl9300: remove broken SMBus Quick operation support"), a conflict was incorrectly solved by adding the I2C_FUNC_SMBUS_I2C_BLOCK feature flag. But the code to handle I2C_SMBUS_I2C_BLOCK_DATA requests will be added by a separate commit.
Fixes: ede965fd555a ("i2c: rtl9300: remove broken SMBus Quick operation support") Cc: stable@vger.kernel.org # v6.13+ Signed-off-by: Sven Eckelmann sven@narfation.org --- drivers/i2c/busses/i2c-rtl9300.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/i2c/busses/i2c-rtl9300.c b/drivers/i2c/busses/i2c-rtl9300.c index 9e1f71fed0feac41e1534709de2406c7a63fa9cd..af991b28e4f83591a3212f7e5cf8137e36a7693a 100644 --- a/drivers/i2c/busses/i2c-rtl9300.c +++ b/drivers/i2c/busses/i2c-rtl9300.c @@ -307,8 +307,7 @@ static int rtl9300_i2c_smbus_xfer(struct i2c_adapter *adap, u16 addr, unsigned s static u32 rtl9300_i2c_func(struct i2c_adapter *a) { return I2C_FUNC_SMBUS_BYTE | I2C_FUNC_SMBUS_BYTE_DATA | - I2C_FUNC_SMBUS_WORD_DATA | I2C_FUNC_SMBUS_BLOCK_DATA | - I2C_FUNC_SMBUS_I2C_BLOCK; + I2C_FUNC_SMBUS_WORD_DATA | I2C_FUNC_SMBUS_BLOCK_DATA; }
static const struct i2c_algorithm rtl9300_i2c_algo = {
On Sat, Sep 27, 2025 at 11:52:16AM +0200, Sven Eckelmann wrote:
While applying the patch for commit ede965fd555a ("i2c: rtl9300: remove broken SMBus Quick operation support"), a conflict was incorrectly solved by adding the I2C_FUNC_SMBUS_I2C_BLOCK feature flag. But the code to handle I2C_SMBUS_I2C_BLOCK_DATA requests will be added by a separate commit.
Fixes: ede965fd555a ("i2c: rtl9300: remove broken SMBus Quick operation support") Cc: stable@vger.kernel.org # v6.13+ Signed-off-by: Sven Eckelmann sven@narfation.org
Applied to for-current with $subject fixed to match the correct FUNC flag, thanks!
linux-stable-mirror@lists.linaro.org