diff options
author | Michael Ellerman <michael@ellerman.id.au> | 2007-12-17 01:35:53 -0500 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-12-20 00:15:49 -0500 |
commit | 84631f37cc405dd6dcd566f9fa4e8a3ca2f03f76 (patch) | |
tree | ce0657276d19baf01ad8da9f1b27f93feb75bb63 /include/asm-powerpc/dma-mapping.h | |
parent | 53024fe250a0f044b114844a01456902bce40ade (diff) |
[POWERPC] Implement pci_set_dma_mask() in terms of the dma_ops
PowerPC currently doesn't implement pci_set_dma_mask(), which means drivers
calling it will get the generic version in drivers/pci/pci.c.
The powerpc dma mapping ops include a dma_set_mask() hook, which luckily is
not implemented by anyone - so there is no bug in the fact that the hook
is currently never called.
However in future we'll add implementation(s) of dma_set_mask(), and so we
need pci_set_dma_mask() to call the hook.
To save adding a hook to the dma mapping ops, pci-set_consistent_dma_mask()
simply calls the dma_set_mask() hook and then copies the new mask into
dev.coherenet_dma_mask.
Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'include/asm-powerpc/dma-mapping.h')
-rw-r--r-- | include/asm-powerpc/dma-mapping.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/asm-powerpc/dma-mapping.h b/include/asm-powerpc/dma-mapping.h index ff52013c0e2d..e974876e18d2 100644 --- a/include/asm-powerpc/dma-mapping.h +++ b/include/asm-powerpc/dma-mapping.h | |||
@@ -87,6 +87,9 @@ static inline int dma_supported(struct device *dev, u64 mask) | |||
87 | return dma_ops->dma_supported(dev, mask); | 87 | return dma_ops->dma_supported(dev, mask); |
88 | } | 88 | } |
89 | 89 | ||
90 | /* We have our own implementation of pci_set_dma_mask() */ | ||
91 | #define HAVE_ARCH_PCI_SET_DMA_MASK | ||
92 | |||
90 | static inline int dma_set_mask(struct device *dev, u64 dma_mask) | 93 | static inline int dma_set_mask(struct device *dev, u64 dma_mask) |
91 | { | 94 | { |
92 | struct dma_mapping_ops *dma_ops = get_dma_ops(dev); | 95 | struct dma_mapping_ops *dma_ops = get_dma_ops(dev); |