linux/drivers/net/ethernet/intel
Joanna Yurdal 1ec2297c5c igb: Clear TSICR interrupts together with ICR
Issuing "ip link set up/down" can block TSICR interrupts, what results in
missing PTP Tx timestamp and no PPS pulse generation.

Problem happens when the link is set up with the TSICR interrupts pending.
ICR is cleared before enabling interrupts, while TSICR is not. When all TSICR
interrupts are pending at this moment, time_sync interrupt will never
be generated. TSICR should be cleared as well.

In order to reproduce the issue:
1. Setup linux with IEEE 1588 grandmaster and PPS output enabled
2. Continue setting link up/down with random intervals between commands
3. Wait until PPS is not generated ( only one pulse is generated and PPS
dies), and ptp4l complains constantly about Tx timeout.

Signed-off-by: Joanna Yurdal <jyu@trackman.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2018-06-04 09:55:36 -07:00
..
e1000 net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
e1000e e1000e: Ignore TSYNCRXCTL when getting I219 clock attributes 2018-06-04 09:45:53 -07:00
fm10k fm10k: don't protect fm10k_queue_mac_request by fm10k_host_mbx_ready 2018-05-09 09:02:48 -07:00
i40e Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next 2018-05-24 22:20:51 -04:00
i40evf i40evf: Fix a hardware reset support in VF driver 2018-05-14 07:05:16 -07:00
ice ice: Update NVM AQ command functions 2018-05-17 09:14:09 -07:00
igb igb: Clear TSICR interrupts together with ICR 2018-06-04 09:55:36 -07:00
igbvf net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgb net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-06-03 09:31:58 -04:00
ixgbevf ixgbevf: fix MAC address changes through ixgbevf_set_mac() 2018-05-17 09:07:37 -07:00
e100.c net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
Kconfig ice: Add basic driver framework for Intel(R) E800 Series 2018-03-26 08:28:02 -07:00
Makefile ice: Add basic driver framework for Intel(R) E800 Series 2018-03-26 08:28:02 -07:00