diff options
| author | Daniel Axtens | 2015-03-31 07:00:52 +0200 | 
|---|---|---|
| committer | Michael Ellerman | 2015-04-11 12:49:16 +0200 | 
| commit | d28a0d94d752354d9830f8cc0426e9119f9f227d (patch) | |
| tree | d872ef44166e672c8c05ddb61f6fb6ab0f139c7b /arch/powerpc | |
| parent | powerpc/powernv: Move controller ops from ppc_md to controller_ops (diff) | |
| download | kernel-qcow2-linux-d28a0d94d752354d9830f8cc0426e9119f9f227d.tar.gz kernel-qcow2-linux-d28a0d94d752354d9830f8cc0426e9119f9f227d.tar.xz kernel-qcow2-linux-d28a0d94d752354d9830f8cc0426e9119f9f227d.zip | |
powerpc/pasemi: Move controller ops from ppc_md to controller_ops
This moves the PaSemi platform to use the pci_controller_ops
structure rather than ppc_md for PCI controller operations.
Signed-off-by: Daniel Axtens <dja@axtens.net>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc')
| -rw-r--r-- | arch/powerpc/platforms/pasemi/iommu.c | 6 | ||||
| -rw-r--r-- | arch/powerpc/platforms/pasemi/pasemi.h | 1 | ||||
| -rw-r--r-- | arch/powerpc/platforms/pasemi/pci.c | 5 | 
3 files changed, 10 insertions, 2 deletions
| diff --git a/arch/powerpc/platforms/pasemi/iommu.c b/arch/powerpc/platforms/pasemi/iommu.c index 2e576f2ae442..b8f567b2ea19 100644 --- a/arch/powerpc/platforms/pasemi/iommu.c +++ b/arch/powerpc/platforms/pasemi/iommu.c @@ -27,6 +27,8 @@  #include <asm/machdep.h>  #include <asm/firmware.h> +#include "pasemi.h" +  #define IOBMAP_PAGE_SHIFT	12  #define IOBMAP_PAGE_SIZE	(1 << IOBMAP_PAGE_SHIFT)  #define IOBMAP_PAGE_MASK	(IOBMAP_PAGE_SIZE - 1) @@ -248,8 +250,8 @@ void __init iommu_init_early_pasemi(void)  	iob_init(NULL); -	ppc_md.pci_dma_dev_setup = pci_dma_dev_setup_pasemi; -	ppc_md.pci_dma_bus_setup = pci_dma_bus_setup_pasemi; +	pasemi_pci_controller_ops.dma_dev_setup = pci_dma_dev_setup_pasemi; +	pasemi_pci_controller_ops.dma_bus_setup = pci_dma_bus_setup_pasemi;  	ppc_md.tce_build = iobmap_build;  	ppc_md.tce_free  = iobmap_free;  	set_pci_dma_ops(&dma_iommu_ops); diff --git a/arch/powerpc/platforms/pasemi/pasemi.h b/arch/powerpc/platforms/pasemi/pasemi.h index ea65bf0eb897..11f230a48227 100644 --- a/arch/powerpc/platforms/pasemi/pasemi.h +++ b/arch/powerpc/platforms/pasemi/pasemi.h @@ -30,5 +30,6 @@ static inline void restore_astate(int cpu)  }  #endif +extern struct pci_controller_ops pasemi_pci_controller_ops;  #endif /* _PASEMI_PASEMI_H */ diff --git a/arch/powerpc/platforms/pasemi/pci.c b/arch/powerpc/platforms/pasemi/pci.c index aa862713258c..f3a68a0fef23 100644 --- a/arch/powerpc/platforms/pasemi/pci.c +++ b/arch/powerpc/platforms/pasemi/pci.c @@ -31,6 +31,8 @@  #include <asm/ppc-pci.h> +#include "pasemi.h" +  #define PA_PXP_CFA(bus, devfn, off) (((bus) << 20) | ((devfn) << 12) | (off))  static inline int pa_pxp_offset_valid(u8 bus, u8 devfn, int offset) @@ -199,6 +201,7 @@ static int __init pas_add_bridge(struct device_node *dev)  	hose->first_busno = 0;  	hose->last_busno = 0xff; +	hose->controller_ops = pasemi_pci_controller_ops;  	setup_pa_pxp(hose); @@ -239,3 +242,5 @@ void __iomem *pasemi_pci_getcfgaddr(struct pci_dev *dev, int offset)  	return (void __iomem *)pa_pxp_cfg_addr(hose, dev->bus->number, dev->devfn, offset);  } + +struct pci_controller_ops pasemi_pci_controller_ops; | 
