e1000e: Remove the runtime suspend restriction on CNP+
authorChen Yu <yu.c.chen@intel.com>
Tue, 1 Dec 2020 01:22:09 +0000 (09:22 +0800)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Tue, 16 Mar 2021 03:10:51 +0000 (20:10 -0700)
Although there is platform issue of runtime suspend support
on CNP, it would be more flexible to let the user decide whether
to disable runtime or not because:
1. This can be done in userspace via
   echo on > /sys/devices/pci0000\:00/0000\:00\:1f.d/power/control
2. More and more NICs would support runtime suspend, disabling the
   runtime suspend on them by default would impact the validation.

Only disable runtime suspend on CNP in case of any user space regression.

Signed-off-by: Chen Yu <yu.c.chen@intel.com>
Tested-by: Dvora Fuxbrumer <dvorax.fuxbrumer@linux.intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/e1000e/netdev.c

index 3eaae9a5a44ef76082ce480ee8a625ee5699e7b9..480f6712a3b630ed481c32cee9fb0803ccb1c248 100644 (file)
@@ -7635,7 +7635,7 @@ static int e1000_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
 
        dev_pm_set_driver_flags(&pdev->dev, DPM_FLAG_SMART_PREPARE);
 
-       if (pci_dev_run_wake(pdev) && hw->mac.type < e1000_pch_cnp)
+       if (pci_dev_run_wake(pdev) && hw->mac.type != e1000_pch_cnp)
                pm_runtime_put_noidle(&pdev->dev);
 
        return 0;