RE: [PATCH] i2c: tegra: Wait for config load atomically while in ISR

From: David Laight
Date: Mon Jan 11 2021 - 09:33:34 EST


From: Mikko Perttunen
> Sent: 11 January 2021 13:56
>
> Upon a communication error, the interrupt handler can call
> tegra_i2c_disable_packet_mode. This causes a sleeping poll to happen
> unless the current transaction was marked atomic. Since
> tegra_i2c_disable_packet_mode is only called from the interrupt path,
> make it use atomic waiting always.

Spin-waiting in an ISR for anything that it makes sense to do
a sleep-wait for at other times is badly broken design.

David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)