Searched hist:ac39452e942af6a212e8f89e8a36b71354323845 (Results 1 – 1 of 1) sorted by relevance
/openbmc/linux/drivers/macintosh/ |
H A D | via-cuda.c | diff ac39452e942af6a212e8f89e8a36b71354323845 Sat Dec 31 18:56:26 CST 2016 Finn Thain <fthain@telegraphics.com.au> via-cuda: Use spinlock_irq_save/restore instead of enable/disable_irq
The cuda_start() function uses spinlock_irq_save/restore for mutual exclusion. Let's have cuda_poll() do the same when polling the VIA interrupt.
The benefit to disabling local irqs when the interrupt is being polled is that the interrupt handler now has the same timing properties regardless of whether it is invoked normally or from cuda_poll().
This driver was written back when local irqs remained enabled during execution of interrupt handlers and cuda_poll() was probably trying to achieve the same effect by use of enable/disable_irq.
Tested-by: Stan Johnson <userm57@yahoo.com> Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
|