powerpc/powernv: Don't use pe->pbus to get the domain number
If the PE contains single PCI function, "pe->pbus" would be NULL. It's not reliable to be used by pci_domain_nr(). We just grab the PCI domain number from the PCI host controller (struct pci_controller) instance. Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
65fd766b99
commit
e9bc03fe22
@ -672,7 +672,7 @@ static void pnv_pci_ioda_setup_dma_pe(struct pnv_phb *phb,
|
||||
TCE_PCI_SWINV_PAIR);
|
||||
}
|
||||
iommu_init_table(tbl, phb->hose->node);
|
||||
iommu_register_group(tbl, pci_domain_nr(pe->pbus), pe->pe_number);
|
||||
iommu_register_group(tbl, phb->hose->global_number, pe->pe_number);
|
||||
|
||||
if (pe->pdev)
|
||||
set_iommu_table_base_and_group(&pe->pdev->dev, tbl);
|
||||
@ -800,7 +800,7 @@ static void pnv_pci_ioda2_setup_dma_pe(struct pnv_phb *phb,
|
||||
tbl->it_type |= (TCE_PCI_SWINV_CREATE | TCE_PCI_SWINV_FREE);
|
||||
}
|
||||
iommu_init_table(tbl, phb->hose->node);
|
||||
iommu_register_group(tbl, pci_domain_nr(pe->pbus), pe->pe_number);
|
||||
iommu_register_group(tbl, phb->hose->global_number, pe->pe_number);
|
||||
|
||||
if (pe->pdev)
|
||||
set_iommu_table_base_and_group(&pe->pdev->dev, tbl);
|
||||
|
Loading…
Reference in New Issue
Block a user