diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c index 97b026130c71..aa750485c63c 100644 --- a/arch/powerpc/platforms/pseries/iommu.c +++ b/arch/powerpc/platforms/pseries/iommu.c @@ -757,6 +757,15 @@ static void pci_dma_bus_setup_pSeriesLP(struct pci_bus *bus) if (dma_window == NULL) pr_debug(" no ibm,dma-window property !\n"); + /* There is an exception to the above. In case the PE goes into frozen + * state, firmware may not provide ibm,dma-window property at the time + * of LPAR boot up. + */ + + if (!pdn) { + pr_debug(" no ibm,dma-window property !\n"); + return; + } ppci = PCI_DN(pdn);