]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
ARM: riscpc: fix DMA
authorRussell King <rmk+kernel@armlinux.org.uk>
Thu, 2 May 2019 16:19:18 +0000 (17:19 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 6 Aug 2019 17:05:19 +0000 (19:05 +0200)
commitff1b2beb5f0042cbfa99c82ea44a0b64b16b097a
tree5602d8b11337808de58456969fb6a71522a6f89e
parent7d80e1218adf6d1aa5270587192789e218fef706
ARM: riscpc: fix DMA

[ Upstream commit ffd9a1ba9fdb7f2bd1d1ad9b9243d34e96756ba2 ]

DMA got broken a while back in two different ways:
1) a change in the behaviour of disable_irq() to wait for the interrupt
   to finish executing causes us to deadlock at the end of DMA.
2) a change to avoid modifying the scatterlist left the first transfer
   uninitialised.

DMA is only used with expansion cards, so has gone unnoticed.

Fixes: fa4e99899932 ("[ARM] dma: RiscPC: don't modify DMA SG entries")
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/arm/mach-rpc/dma.c