Re: [PATCH 2/4] i2c: imx: Fix race condition in dma read

From: Uwe Kleine-König
Date: Thu Jul 05 2018 - 02:32:54 EST


On Wed, May 23, 2018 at 11:56:21AM +0200, Esben Haabendal wrote:
> From: Esben Haabendal <eha@xxxxxxxx>
>
> This fixes a race condition, where the DMAEN bit ends up being set after
> I2C slave has transmitted a byte following the dummy read. When that
> happens, an interrupt is generated instead, and no DMA request is generated
> to kickstart the DMA read, and a timeout happens after DMA_TIMEOUT (1 sec).
>
> Fixed by setting the DMAEN bit before the dummy read.

Does this fix the problem or just narrow the race window?

Best regards
Uwe

--
Pengutronix e.K. | Uwe Kleine-König |
Industrial Linux Solutions | http://www.pengutronix.de/ |