[PATCH 2/2] powerpc/cell: Fix iommu breakage caused by controller_ops change
Michael Ellerman
mpe at ellerman.id.au
Tue Apr 14 16:49:06 AEST 2015
The recent patch to convert cell to use pci_controller_ops had a small
bug which broke machines using an iommu.
The set of phb->controller_ops was added after the check for name !=
"pci", meaning pcix/pcie PHBs weren't getting their ops set correctly.
Fixes: 9c1368fc50e7 ("powerpc/cell: Move controller ops from ppc_md to controller_ops")
Signed-off-by: Michael Ellerman <mpe at ellerman.id.au>
---
arch/powerpc/platforms/cell/setup.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/powerpc/platforms/cell/setup.c b/arch/powerpc/platforms/cell/setup.c
index d1be268b1e6e..36cff28d0293 100644
--- a/arch/powerpc/platforms/cell/setup.c
+++ b/arch/powerpc/platforms/cell/setup.c
@@ -127,13 +127,13 @@ static int cell_setup_phb(struct pci_controller *phb)
if (rc)
return rc;
+ phb->controller_ops = cell_pci_controller_ops;
+
np = phb->dn;
model = of_get_property(np, "model", NULL);
if (model == NULL || strcmp(np->name, "pci"))
return 0;
- phb->controller_ops = cell_pci_controller_ops;
-
/* Setup workarounds for spider */
if (strcmp(model, "Spider"))
return 0;
--
2.1.0
More information about the Linuxppc-dev
mailing list