summaryrefslogtreecommitdiff
path: root/arch/powerpc/sysdev
diff options
context:
space:
mode:
authorJia Hongtao <B38951@freescale.com>2012-08-03 18:14:10 +0800
committerKumar Gala <galak@kernel.crashing.org>2012-09-12 14:57:09 -0500
commit688ba1dbee8a49a2efe507cd9ae69634d92bb640 (patch)
treef795ef7757957fd04bd2938a8a1a5b33b30b0795 /arch/powerpc/sysdev
parent39be5b4a7f232870aad0b3c130791eacd0d34347 (diff)
downloadlinux-3.10-688ba1dbee8a49a2efe507cd9ae69634d92bb640.tar.gz
linux-3.10-688ba1dbee8a49a2efe507cd9ae69634d92bb640.tar.bz2
linux-3.10-688ba1dbee8a49a2efe507cd9ae69634d92bb640.zip
powerpc/swiotlb: Enable at early stage and disable if not necessary
Remove the dependency on PCI initialization for SWIOTLB initialization. So that PCI can be initialized at proper time. SWIOTLB is partly determined by PCI inbound/outbound map which is assigned in PCI initialization. But swiotlb_init() should be done at the stage of mem_init() which is much earlier than PCI initialization. So we reserve the memory for SWIOTLB first and free it if not necessary. All boards are converted to fit this change. Signed-off-by: Jia Hongtao <B38951@freescale.com> Signed-off-by: Li Yang <leoli@freescale.com> Acked-by: Tony Breeds <tony@bakeyournoodle.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/sysdev')
-rw-r--r--arch/powerpc/sysdev/fsl_pci.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/arch/powerpc/sysdev/fsl_pci.c b/arch/powerpc/sysdev/fsl_pci.c
index 6938792ccfd..da7a3d7f54c 100644
--- a/arch/powerpc/sysdev/fsl_pci.c
+++ b/arch/powerpc/sysdev/fsl_pci.c
@@ -872,11 +872,8 @@ void __devinit fsl_pci_init(void)
* we need SWIOTLB to handle buffers located outside of
* dma capable memory region
*/
- if (memblock_end_of_DRAM() - 1 > max) {
+ if (memblock_end_of_DRAM() - 1 > max)
ppc_swiotlb_enable = 1;
- set_pci_dma_ops(&swiotlb_dma_ops);
- ppc_md.pci_dma_dev_setup = pci_dma_dev_setup_swiotlb;
- }
#endif
}
#endif