Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 958f9889 authored by Marek Vasut's avatar Marek Vasut Committed by Wolfram Sang
Browse files

i2c: mxs: Handle i2c DMA failure properly



Properly terminate the DMA transfer in case the DMA PIO transfer
or setup fails for any reason.

Signed-off-by: default avatarMarek Vasut <marex@denx.de>
Signed-off-by: default avatarWolfram Sang <w.sang@pengutronix.de>
parent 963f2076
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -287,12 +287,14 @@ static int mxs_i2c_dma_setup_xfer(struct i2c_adapter *adap,
select_init_dma_fail:
	dma_unmap_sg(i2c->dev, &i2c->sg_io[0], 1, DMA_TO_DEVICE);
select_init_pio_fail:
	dmaengine_terminate_all(i2c->dmach);
	return -EINVAL;

/* Write failpath. */
write_init_dma_fail:
	dma_unmap_sg(i2c->dev, i2c->sg_io, 2, DMA_TO_DEVICE);
write_init_pio_fail:
	dmaengine_terminate_all(i2c->dmach);
	return -EINVAL;
}