|
@@ -1049,6 +1049,8 @@ static int be_find_vfs(struct be_adapter *adapter, int vf_state)
|
|
|
u16 offset, stride;
|
|
|
|
|
|
pos = pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_SRIOV);
|
|
|
+ if (!pos)
|
|
|
+ return 0;
|
|
|
pci_read_config_word(pdev, pos + PCI_SRIOV_VF_OFFSET, &offset);
|
|
|
pci_read_config_word(pdev, pos + PCI_SRIOV_VF_STRIDE, &stride);
|
|
|
|
|
@@ -2542,7 +2544,6 @@ static int be_clear(struct be_adapter *adapter)
|
|
|
be_cmd_fw_clean(adapter);
|
|
|
|
|
|
be_msix_disable(adapter);
|
|
|
- pci_write_config_dword(adapter->pdev, PCICFG_CUST_SCRATCHPAD_CSR, 0);
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
@@ -2785,8 +2786,6 @@ static int be_setup(struct be_adapter *adapter)
|
|
|
|
|
|
schedule_delayed_work(&adapter->work, msecs_to_jiffies(1000));
|
|
|
adapter->flags |= BE_FLAGS_WORKER_SCHEDULED;
|
|
|
-
|
|
|
- pci_write_config_dword(adapter->pdev, PCICFG_CUST_SCRATCHPAD_CSR, 1);
|
|
|
return 0;
|
|
|
err:
|
|
|
be_clear(adapter);
|
|
@@ -3724,10 +3723,7 @@ reschedule:
|
|
|
|
|
|
static bool be_reset_required(struct be_adapter *adapter)
|
|
|
{
|
|
|
- u32 reg;
|
|
|
-
|
|
|
- pci_read_config_dword(adapter->pdev, PCICFG_CUST_SCRATCHPAD_CSR, ®);
|
|
|
- return reg;
|
|
|
+ return be_find_vfs(adapter, ENABLED) > 0 ? false : true;
|
|
|
}
|
|
|
|
|
|
static int __devinit be_probe(struct pci_dev *pdev,
|