igc: Fix suspending when PTM is active
authorVinicius Costa Gomes <vinicius.gomes@intel.com>
Wed, 13 Apr 2022 01:58:15 +0000 (18:58 -0700)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Wed, 13 Apr 2022 16:17:58 +0000 (09:17 -0700)
commit822f52e7efdc88fccffb9fbf6250a4b7666a0b0f
tree7bb1bf482ad895eaf3125b669b16f19286fad148
parentc80a29f0fe9b6f5457e0788e27d1110577eba99b
igc: Fix suspending when PTM is active

Some mainboard/CPU combinations, in particular, Alder Lake-S with a
W680 mainboard, have shown problems (system hangs usually, no kernel
logs) with suspend/resume when PCIe PTM is enabled and active. In some
cases, it could be reproduced when removing the igc module.

The best we can do is to stop PTM dialogs from the downstream/device
side before the interface is brought down. PCIe PTM will be re-enabled
when the interface is being brought up.

Fixes: a90ec8483732 ("igc: Add support for PTP getcrosststamp()")
Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
Tested-by: Naama Meir <naamax.meir@linux.intel.com>
Acked-by: Paul Menzel <pmenzel@molgen.mpg.de>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/igc/igc_ptp.c