On 2017-05-28 09:52:17 +0200, Wolfram Sang wrote: > Because we need to transfer some bytes with PIO, the msg length is not > the length of the DMA buffer. Use the correct value which we used when > doing the mapping. > > Fixes: 73e8b0528346e8 ("i2c: rcar: add DMA support") > Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@xxxxxxxxxxxx> > --- > drivers/i2c/busses/i2c-rcar.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/i2c/busses/i2c-rcar.c b/drivers/i2c/busses/i2c-rcar.c > index 214bf2835d1f95..8be3e6cb8fe686 100644 > --- a/drivers/i2c/busses/i2c-rcar.c > +++ b/drivers/i2c/busses/i2c-rcar.c > @@ -319,7 +319,7 @@ static void rcar_i2c_dma_unmap(struct rcar_i2c_priv *priv) > rcar_i2c_write(priv, ICFBSCR, TCYC06); > > dma_unmap_single(chan->device->dev, sg_dma_address(&priv->sg), > - priv->msg->len, priv->dma_direction); > + sg_dma_len(&priv->sg), priv->dma_direction); > > priv->dma_direction = DMA_NONE; > } > -- > 2.11.0 > -- Regards, Niklas Söderlund