|
@@ -4970,6 +4970,8 @@ static void be_unmap_pci_bars(struct be_adapter *adapter)
|
|
|
pci_iounmap(adapter->pdev, adapter->csr);
|
|
|
if (adapter->db)
|
|
|
pci_iounmap(adapter->pdev, adapter->db);
|
|
|
+ if (adapter->pcicfg && adapter->pcicfg_mapped)
|
|
|
+ pci_iounmap(adapter->pdev, adapter->pcicfg);
|
|
|
}
|
|
|
|
|
|
static int db_bar(struct be_adapter *adapter)
|
|
@@ -5021,8 +5023,10 @@ static int be_map_pci_bars(struct be_adapter *adapter)
|
|
|
if (!addr)
|
|
|
goto pci_map_err;
|
|
|
adapter->pcicfg = addr;
|
|
|
+ adapter->pcicfg_mapped = true;
|
|
|
} else {
|
|
|
adapter->pcicfg = adapter->db + SRIOV_VF_PCICFG_OFFSET;
|
|
|
+ adapter->pcicfg_mapped = false;
|
|
|
}
|
|
|
}
|
|
|
|