Re: [PATCH] i2c: i2c-stm32f7: fix 10-bits check in slave free id search loop

From: Pierre Yves MORDRET
Date: Mon Nov 18 2019 - 04:56:47 EST


Hello

Look good to me

Reviewed-by: Pierre-Yves MORDRET <pierre-yves.mordret@xxxxxx>

Regards

On 11/12/19 9:19 AM, Alain Volmat wrote:
> Fix a typo in the free slave id search loop. Instead of I2C_CLIENT_PEC,
> it should have been I2C_CLIENT_TEN. The slave id 1 can only handle 7-bit
> addresses and thus is not eligible in case of 10-bit addresses.
> As a matter of fact none of the slave id support I2C_CLIENT_PEC, overall
> check is performed at the beginning of the stm32f7_i2c_reg_slave function.
>
> Fixes: 60d609f30de2 ("i2c: i2c-stm32f7: Add slave support")
>
> Signed-off-by: Alain Volmat <alain.volmat@xxxxxx>
> ---
> drivers/i2c/busses/i2c-stm32f7.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/i2c/busses/i2c-stm32f7.c b/drivers/i2c/busses/i2c-stm32f7.c
> index b9a082f64d58..b2634afe066d 100644
> --- a/drivers/i2c/busses/i2c-stm32f7.c
> +++ b/drivers/i2c/busses/i2c-stm32f7.c
> @@ -1268,7 +1268,7 @@ static int stm32f7_i2c_get_free_slave_id(struct stm32f7_i2c_dev *i2c_dev,
> * slave[1] supports 7-bit slave address only
> */
> for (i = STM32F7_I2C_MAX_SLAVE - 1; i >= 0; i--) {
> - if (i == 1 && (slave->flags & I2C_CLIENT_PEC))
> + if (i == 1 && (slave->flags & I2C_CLIENT_TEN))
> continue;
> if (!i2c_dev->slave[i]) {
> *id = i;
>