linux_dsm_epyc7002/drivers/net/ethernet/intel
Jacob Keller cafa1fca9d i40e: fix Timesync Tx interrupt handler code
This patch fixes the PTP Tx timestamp interrupt handler. The original
code misinterpreted the interrupt handler design. We were clearing the
ena_mask bit for the Timesync interrupts. This is done to indicate that
the interrupt will be handled in a scheduled work item (instead of
immediately) and that work item is responsible for re-enabling the
interrupts. However, the Tx timestamp was being handled immediately and
nothing was ever re-enabling it. This resulted in a single interrupt
working for the life of the driver.

This patch fixes the issue by instead clearing the bit from icr0 which
is used to indicate that the interrupt was immediately handled and can
be re-enabled right away. This patch also clears up a related issue due
to writing the PRTTSYN_STAT_0 register, which was unintentionally
clearing the cause bits for Timesync interrupts.

Change-ID: I057bd70d53c302f60fab78246989cbdfa469d83b
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Acked-by: Anjali Singhai Jain <anjali.singhai@intel.com>
Acked-by: Shannon Nelson <shannon.nelson@intel.com>
Tested-by: Kavindya Deegala <kavindya.s.deegala@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-04-26 12:55:39 -04:00
..
e1000 e1000: remove open-coded skb_cow_head 2014-04-11 05:58:07 -07:00
e1000e e1000e/igb/ixgbe/i40e: fix message terminations 2014-04-18 18:41:24 -07:00
i40e i40e: fix Timesync Tx interrupt handler code 2014-04-26 12:55:39 -04:00
i40evf i40evf: program RSS LUT correctly 2014-04-11 06:23:25 -07:00
igb e1000e/igb/ixgbe/i40e: fix message terminations 2014-04-18 18:41:24 -07:00
igbvf igbvf: remove open-coded skb_cow_head 2014-04-11 05:58:09 -07:00
ixgb ixgb: remove open-coded skb_cow_head 2014-04-11 06:08:46 -07:00
ixgbe e1000e/igb/ixgbe/i40e: fix message terminations 2014-04-18 18:41:24 -07:00
ixgbevf ixgbevf: remove open-coded skb_cow_head 2014-04-11 05:58:06 -07:00
e100.c e100: Convert uses of __constant_<foo> to <foo> 2014-03-19 21:46:36 -07:00
Kconfig i40e: add DCB option to Kconfig 2014-01-17 19:13:04 -08:00
Makefile i40evf: add driver to kernel build system 2013-12-31 16:27:49 -08:00