diff options
Diffstat (limited to 'arch/powerpc/kernel/dma.c')
-rw-r--r-- | arch/powerpc/kernel/dma.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/dma.c b/arch/powerpc/kernel/dma.c index 1558f81ac1ff..59503ed98e5f 100644 --- a/arch/powerpc/kernel/dma.c +++ b/arch/powerpc/kernel/dma.c | |||
@@ -353,6 +353,13 @@ u64 dma_get_required_mask(struct device *dev) | |||
353 | if (ppc_md.dma_get_required_mask) | 353 | if (ppc_md.dma_get_required_mask) |
354 | return ppc_md.dma_get_required_mask(dev); | 354 | return ppc_md.dma_get_required_mask(dev); |
355 | 355 | ||
356 | if (dev_is_pci(dev)) { | ||
357 | struct pci_dev *pdev = to_pci_dev(dev); | ||
358 | struct pci_controller *phb = pci_bus_to_host(pdev->bus); | ||
359 | if (phb->controller_ops.dma_get_required_mask) | ||
360 | return phb->controller_ops.dma_get_required_mask(pdev); | ||
361 | } | ||
362 | |||
356 | return __dma_get_required_mask(dev); | 363 | return __dma_get_required_mask(dev); |
357 | } | 364 | } |
358 | EXPORT_SYMBOL_GPL(dma_get_required_mask); | 365 | EXPORT_SYMBOL_GPL(dma_get_required_mask); |