On Thu, Aug 13, 2015 at 04:25:05PM +0100, Russell King - ARM Linux wrote:
On Thu, Aug 13, 2015 at 05:04:08PM +0200, Christoph Hellwig wrote:
quoted
diff --git a/arch/arm/common/dmabounce.c b/arch/arm/common/dmabounce.c
index 1143c4d..260f52a 100644
--- a/arch/arm/common/dmabounce.c
+++ b/arch/arm/common/dmabounce.c
@@ -440,14 +440,6 @@ static void dmabounce_sync_for_device(struct device *dev,
arm_dma_ops.sync_single_for_device(dev, handle, size, dir);
}
-static int dmabounce_set_mask(struct device *dev, u64 dma_mask)
-{
- if (dev->archdata.dmabounce)
- return 0;
-
- return arm_dma_ops.set_dma_mask(dev, dma_mask);
Are you sure about this? A user of dmabounce gets to request any mask
with the original code (even though it was never written back... which
is a separate bug.) After this, it seems that this will get limited
by the dma_supported() check. As this old code is about bouncing any
buffer into DMA-able memory, it doesn't care about the DMA mask.
I think you're right. With the default dma_supported implementation
it would be fine, but ARM uses a custom one. I'll keep the arm
specific dma_set_mask implementation for the next round.