Re: [PATCH v2 RFC 2/8] arm: introduce a global dma_ops pointer

From: Stefano Stabellini
Date: Fri Aug 02 2013 - 07:42:44 EST


On Wed, 31 Jul 2013, Russell King - ARM Linux wrote:
> On Wed, Jul 31, 2013 at 08:54:06PM +0100, Stefano Stabellini wrote:
> > Initially set dma_ops to arm_dma_ops.
> > Use dma_ops instead of arm_dma_ops in dmabounce.
> >
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
> > CC: will.deacon@xxxxxxx
> > CC: linux@xxxxxxxxxxxxxxxx
>
> If you're using swiotlb, there's little point in converting dmabounce
> to be able to use it, because it's basically providing the same
> functionality - dmabounce is there to do software buffer bouncing within
> the DMA to move streaming buffers from DMA-inaccessible memory into
> DMA-accessible memory.
>
> It's original use is with older SoCs with buggy DMA (eg, those which
> can only address alternate 1MB chunks of memory for example) but also
> got used in situations where alternative solutions would've been better
> (like using swiotlb.) I've been discouraging its use as it's suffered
> from memory exhaustion problems (there's a number of threads and bug
> reports which were never solved about IXP4xx(?) platforms suffering
> this due to this bouncing.)

OK, I'll let dmabounce keep using arm_dma_ops directly (instead of
dma_ops).

Should I add "depends on !DMABOUNCE" to the SWIOTLB Kconfig entry too?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/