diff options
author | Daniel Axtens <dja@axtens.net> | 2015-04-14 00:28:00 -0400 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2015-06-01 21:47:43 -0400 |
commit | f2c800aaceb6f26fe78590f971169b1d3d6fe322 (patch) | |
tree | 19266eff29310c001fc39d3b615d5f6794c240d7 | |
parent | b7eba2ffccb51d7676a4ddc26658687331feb6a3 (diff) |
powerpc/ppc4xx_hsta_msi: Move MSI-related ops to pci_controller_ops
Move the ppc4xx hsta msi subsystem to use the pci_controller_ops
structure rather than ppc_md for MSI related PCI controller
operations.
As with fsl_msi, operations are plugged in at the subsys level, after
controller creation. Again, we iterate over all controllers and
populate them with the MSI ops.
Signed-off-by: Daniel Axtens <dja@axtens.net>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
-rw-r--r-- | arch/powerpc/sysdev/ppc4xx_hsta_msi.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/powerpc/sysdev/ppc4xx_hsta_msi.c b/arch/powerpc/sysdev/ppc4xx_hsta_msi.c index f366d2d4c079..2bc33674ebfc 100644 --- a/arch/powerpc/sysdev/ppc4xx_hsta_msi.c +++ b/arch/powerpc/sysdev/ppc4xx_hsta_msi.c | |||
@@ -128,6 +128,7 @@ static int hsta_msi_probe(struct platform_device *pdev) | |||
128 | struct device *dev = &pdev->dev; | 128 | struct device *dev = &pdev->dev; |
129 | struct resource *mem; | 129 | struct resource *mem; |
130 | int irq, ret, irq_count; | 130 | int irq, ret, irq_count; |
131 | struct pci_controller *phb; | ||
131 | 132 | ||
132 | mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); | 133 | mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
133 | if (IS_ERR(mem)) { | 134 | if (IS_ERR(mem)) { |
@@ -171,8 +172,10 @@ static int hsta_msi_probe(struct platform_device *pdev) | |||
171 | } | 172 | } |
172 | } | 173 | } |
173 | 174 | ||
174 | ppc_md.setup_msi_irqs = hsta_setup_msi_irqs; | 175 | list_for_each_entry(phb, &hose_list, list_node) { |
175 | ppc_md.teardown_msi_irqs = hsta_teardown_msi_irqs; | 176 | phb->controller_ops.setup_msi_irqs = hsta_setup_msi_irqs; |
177 | phb->controller_ops.teardown_msi_irqs = hsta_teardown_msi_irqs; | ||
178 | } | ||
176 | return 0; | 179 | return 0; |
177 | 180 | ||
178 | out2: | 181 | out2: |