OSDN Git Service

dmaengine: plx-dma: Implement hardware initialization and cleanup
authorLogan Gunthorpe <logang@deltatee.com>
Fri, 3 Jan 2020 21:20:20 +0000 (14:20 -0700)
committerVinod Koul <vkoul@kernel.org>
Wed, 15 Jan 2020 14:10:51 +0000 (19:40 +0530)
commitc2dbcaa8c672d7ecc96c7a62fd6a34c9d3821bdb
tree3254cbf700a9a0f1a5578abd3c47adca8ab7a3c5
parent905ca51e63be794331e09ff74ccddd44393d3378
dmaengine: plx-dma: Implement hardware initialization and cleanup

Allocate DMA coherent memory for the ring of DMA descriptors and
program the appropriate hardware registers.

A tasklet is created which is triggered on an interrupt to process
all the finished requests. Additionally, any remaining descriptors
are aborted when the hardware is removed or the resources freed.

Use an RCU pointer to synchronize PCI device unbind.

Signed-off-by: Logan Gunthorpe <logang@deltatee.com>
Link: https://lore.kernel.org/r/20200103212021.2881-3-logang@deltatee.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/plx_dma.c