Re: [PATCH v4 16/19] powerpc: fsl_pci, swiotlb: Move controller ops from ppc_md to controller_ops
From: Scott Wood <hidden>
Date: 2015-04-10 03:18:34
On Fri, 2015-04-10 at 13:15 +1000, Daniel Axtens wrote:
Move the installation of DMA operations out of swiotlb's subsys initcall, and into the generic PCI controller operations struct. These ops are installed conditionally, based on the ppc_swiotlb_enable global. The global can be set in two places: - swiotlb_detect_4g, which is always called at the arch initcall level - setup_pci_atmu, which is called as part of the fsl_add_bridge and fsl_pci_syscore_do_resume. fsl_pci_syscore_do_resume is called late enough that any changes as a result of that call will have no effect. As such, if we test the global and set the operations as part of fsl_add_bridge, after the call to setup_pci_atmu, we can be confident that it will cover all the PCI implementations affected by the changes to dma-swiotlb.c. Signed-off-by: Daniel Axtens <redacted> --- v1 --> v2: - Move the setup call to after setup_pci_atmu(). v2 --> v3: - Only set the affected op, not the entire structure. Thanks mpe. v3 --> v4: - Improved commit message, thanks Scott Wood. --- arch/powerpc/kernel/dma-swiotlb.c | 11 ++++------- arch/powerpc/sysdev/fsl_pci.c | 15 +++++++++++++++ 2 files changed, 19 insertions(+), 7 deletions(-)
Acked-by: Scott Wood <redacted> -Scott