kernel_samsung_a53x/drivers/dma
Sultan Alsawaf 7780f16398 dma: pl330: Make IRQ handler non-threaded on RT
-EIO errors with SPI transfers over DMA are observed on RT sometimes.
Looking at the pl330 IRQ handler, it appears that it just masks interrupts
and dispatches tasklets to do further processing.

Since the hard IRQ handler just masks interrupts and dispatches work, make
it non-threaded on RT and introduce a threaded handler to offload some
burden from hard IRQ context.

This appears to resolve the sporadic -EIO errors observed on RT.

Signed-off-by: Sultan Alsawaf <sultan@kerneltoast.com>
2024-11-17 17:44:35 +01:00
..
bestcomm Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dw Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dw-axi-dmac Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dw-edma Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl-dpaa2-qdma Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hsu Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
idxd Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ioat Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ipu Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mediatek dmaengine: mediatek: Fix deadlock caused by synchronize_irq() 2024-11-08 11:25:53 +01:00
ppc4xx Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
qcom Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sf-pdma Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sh Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ti Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
xilinx Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
acpi-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
altera-msgdma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
amba-pl08x.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
at_hdmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
at_hdmac_regs.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
at_xdmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bcm-sba-raid.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bcm2835-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
coh901318.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
coh901318.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
coh901318_lli.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dma-axi-dmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dma-jz4780.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dmaengine.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dmaengine.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dmatest.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ep93xx_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl-edma-common.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl-edma-common.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl-edma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl-qdma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl_raid.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsl_raid.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsldma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fsldma.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hisi_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
idma64.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
idma64.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
img-mdc-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
imx-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
imx-sdma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
iop-adma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
iop-adma.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
k3dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
lpc18xx-dmamux.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mcf-edma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
milbeaut-hdmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
milbeaut-xdmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mmp_pdma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mmp_tdma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
moxart-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mpc512x_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mv_xor.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mv_xor.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mv_xor_v2.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mxs-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
nbpfaxi.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
of-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
owl-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pch_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pl330.c dma: pl330: Make IRQ handler non-threaded on RT 2024-11-17 17:44:35 +01:00
plx_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pxa_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
s3c24xx-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sa11x0-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
samsung-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sirf-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sprd-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
st_fdma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
st_fdma.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ste_dma40.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ste_dma40_ll.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ste_dma40_ll.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
stm32-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
stm32-dmamux.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
stm32-mdma.c dmaengine: stm32-mdma: abort resume if no ongoing transfer 2024-11-08 11:25:47 +01:00
sun4i-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sun6i-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tegra20-apb-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tegra210-adma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
timb_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
TODO Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
txx9dmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
txx9dmac.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
uniphier-mdmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
uniphier-xdmac.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
virt-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
virt-dma.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
xgene-dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
zx_dma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00