diff options
Diffstat (limited to 'arch/powerpc/sysdev/dart_iommu.c')
-rw-r--r-- | arch/powerpc/sysdev/dart_iommu.c | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/arch/powerpc/sysdev/dart_iommu.c b/arch/powerpc/sysdev/dart_iommu.c index a5b40d1460f1..283ce04c5844 100644 --- a/arch/powerpc/sysdev/dart_iommu.c +++ b/arch/powerpc/sysdev/dart_iommu.c | |||
@@ -428,7 +428,7 @@ void __init iommu_init_early_dart(struct pci_controller_ops *controller_ops) | |||
428 | 428 | ||
429 | /* Initialize the DART HW */ | 429 | /* Initialize the DART HW */ |
430 | if (dart_init(dn) != 0) | 430 | if (dart_init(dn) != 0) |
431 | goto bail; | 431 | return; |
432 | 432 | ||
433 | /* Setup bypass if supported */ | 433 | /* Setup bypass if supported */ |
434 | if (dart_is_u4) | 434 | if (dart_is_u4) |
@@ -439,15 +439,6 @@ void __init iommu_init_early_dart(struct pci_controller_ops *controller_ops) | |||
439 | 439 | ||
440 | /* Setup pci_dma ops */ | 440 | /* Setup pci_dma ops */ |
441 | set_pci_dma_ops(&dma_iommu_ops); | 441 | set_pci_dma_ops(&dma_iommu_ops); |
442 | return; | ||
443 | |||
444 | bail: | ||
445 | /* If init failed, use direct iommu and null setup functions */ | ||
446 | controller_ops->dma_dev_setup = NULL; | ||
447 | controller_ops->dma_bus_setup = NULL; | ||
448 | |||
449 | /* Setup pci_dma ops */ | ||
450 | set_pci_dma_ops(&dma_nommu_ops); | ||
451 | } | 442 | } |
452 | 443 | ||
453 | #ifdef CONFIG_PM | 444 | #ifdef CONFIG_PM |