Skip to contentSkip to conversation

planned change to <asm-generic/dma-mapping.h> will cause arch breakage

HEADS UP Christoph Hellwig 1 participant 1 message Apr 25, 2003

lore
Share & tools
lore
#0 lore raw

To allow including <linux/dma-mapping.h> in generic code the default implemtation of the dma-mapping API in terms of the PCI API will have to go away. What does this mean for your architecture?

- If your architecture doesn't use <asm-generic/dma-mapping.h> (arm, i386, parisc): Nothing.
- If your architecture doesn't support PCI (cris, s390. um):
Nothing, except that your arch won't break anymore if somsone includes dma-mapping.h in generic code. But it would be cool to move over your dma-capable busses to the dma-mapping API...
- Everyone else: Unless you properly implement the dma-mapping in your architecture the dma_* APIs won't work anymore for you. The simplest way to get support for it on pci busses is to change your implementation of the pci_* dma functions to the dma_* prototypes and add the following to their top:

	struct pci_dev *pdev = to_pci_dev(dev);

and maybe

	BUG_ON(dev->bus != &pci_bus_type);

Of course it would be much nicer if you could add support for the dma-mapping API to your other dma-capable busses..