Re: [PATCH v2] i2c: stm32f7: Fix PEC handling in case of SMBUS transfers

From: Andi Shyti
Date: Thu Oct 12 2023 - 11:06:27 EST


Hi Alain,

On Tue, Oct 10, 2023 at 10:44:54AM +0200, Alain Volmat wrote:
> In case of SMBUS byte read with PEC enabled, the whole transfer
> is split into two commands. A first write command, followed by
> a read command. The write command does not have any PEC byte
> and a PEC byte is appended at the end of the read command.
> (cf Read byte protocol with PEC in SMBUS specification)
>
> Within the STM32 I2C controller, handling (either sending
> or receiving) of the PEC byte is done via the PECBYTE bit in
> register CR2.
>
> Currently, the PECBYTE is set at the beginning of a transfer,
> which lead to sending a PEC byte at the end of the write command
> (hence losing the real last byte), and also does not check the
> PEC byte received during the read command.
>
> This patch corrects the function stm32f7_i2c_smbus_xfer_msg
> in order to only set the PECBYTE during the read command.

Thanks for improving the log.

> Fixes: 9e48155f6bfe ("i2c: i2c-stm32f7: Add initial SMBus protocols support")
> Signed-off-by: Alain Volmat <alain.volmat@xxxxxxxxxxx>
> Reviewed-by: Pierre-Yves MORDRET <pierre-yves.mordret@xxxxxxxxxxx>

As this is a fix you should have also included and Cc'ed:

Cc: <stable@xxxxxxxxxxxxxxx> # v4.18+

No need to resend.

Acked-by: Andi Shyti <andi.shyti@xxxxxxxxxx>

Thanks,
Andi