소스 검색

powerpc/cell: Fix iommu breakage caused by controller_ops change

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@ellerman.id.au>
Michael Ellerman 10 년 전
부모
커밋
4acd09b4bf
1개의 변경된 파일2개의 추가작업 그리고 2개의 파일을 삭제
  1. 2 2
      arch/powerpc/platforms/cell/setup.c

+ 2 - 2
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;