dma_alloc_coherent() on PPC32: physical addresses above 2G possible?

From: Stefan Richter
Date: Sun Jul 20 2008 - 14:36:43 EST


Hi all,

I have to implement a workaround for a PCI device which gets into trouble if descriptors are located at 32bit addresses, while 31bit addresses are fine. I would like to avoid this workaround on machines on which dma_alloc_coherent() won't ever go at memory above 2 GB.

Is defined(CONFIG_PPC32) a safe test for this? I'm under the impression that defined(CONFIG_X86_32) is safe.

Are there any other means to detect when the workaround can be omitted, at compile time or at runtime?

PS: I don't want to set the DMA mask of this device to DMA_31BIT_MASK because that would be detrimental to other functions of the device. It's a TI TSB43AB22A FireWire controller.
--
Stefan Richter
-=====-==--- -=== =-=--
http://arcgraph.de/sr/
--
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/