[U-Boot] [PATCH 1/2] xilinx_xiic: fix fill tx fifo loop

Marek Vasut marex at denx.de
Tue Jun 25 11:31:45 UTC 2019


On 6/25/19 11:59 AM, Melin Tomas wrote:
> Comparison should be against the actual message length, not loop index.

... because ... ?
The reasoning is missing in the commit message.

> Signed-off-by: Tomas Melin <tomas.melin at vaisala.com>
> ---
>  drivers/i2c/xilinx_xiic.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/i2c/xilinx_xiic.c b/drivers/i2c/xilinx_xiic.c
> index 83114ed510..e4ca0ab936 100644
> --- a/drivers/i2c/xilinx_xiic.c
> +++ b/drivers/i2c/xilinx_xiic.c
> @@ -149,7 +149,7 @@ static void xiic_fill_tx_fifo(struct xilinx_xiic_priv *priv,
>  	while (len--) {
>  		u16 data = msg->buf[pos++];
>  
> -		if (pos == len && nmsgs == 1) {
> +		if ((msg->len - pos == 0) && nmsgs == 1) {
>  			/* last message in transfer -> STOP */
>  			data |= XIIC_TX_DYN_STOP_MASK;
>  		}
> 


-- 
Best regards,
Marek Vasut


More information about the U-Boot mailing list