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

From: Esben Haabendal
Date: Mon Jul 09 2018 - 05:22:39 EST


Uwe Kleine-KÃnig <u.kleine-koenig@xxxxxxxxxxxxxx> writes:

> 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?

It should fix the problem.

/Esben