|
@@ -109,20 +109,7 @@ EXPORT_SYMBOL_GPL(adf_reset_sbr);
|
|
|
|
|
|
void adf_reset_flr(struct adf_accel_dev *accel_dev)
|
|
|
{
|
|
|
- struct pci_dev *pdev = accel_to_pci_dev(accel_dev);
|
|
|
- u16 control = 0;
|
|
|
- int pos = 0;
|
|
|
-
|
|
|
- dev_info(&GET_DEV(accel_dev), "Function level reset\n");
|
|
|
- pos = pci_pcie_cap(pdev);
|
|
|
- if (!pos) {
|
|
|
- dev_err(&GET_DEV(accel_dev), "Restart device failed\n");
|
|
|
- return;
|
|
|
- }
|
|
|
- pci_read_config_word(pdev, pos + PCI_EXP_DEVCTL, &control);
|
|
|
- control |= PCI_EXP_DEVCTL_BCR_FLR;
|
|
|
- pci_write_config_word(pdev, pos + PCI_EXP_DEVCTL, control);
|
|
|
- msleep(100);
|
|
|
+ pcie_flr(accel_to_pci_dev(accel_dev));
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(adf_reset_flr);
|
|
|
|