linux/drivers/net/ethernet/intel/igb
Kshitiz Gupta 0066c8b6f4 igb: fix adjusting PTP timestamps for Tx/Rx latency
Fix PHY delay compensation math in igb_ptp_tx_hwtstamp() and
igb_ptp_rx_rgtstamp. Add PHY delay compensation in
igb_ptp_rx_pktstamp().

In the IGB driver, there are two functions that retrieve timestamps
received by the PHY - igb_ptp_rx_rgtstamp() and igb_ptp_rx_pktstamp().
The previous commit only changed igb_ptp_rx_rgtstamp(), and the change
was incorrect.

There are two instances in which PHY delay compensations should be
made:

- Before the packet transmission over the PHY, the latency between
  when the packet is timestamped and transmission of the packets,
  should be an add operation, but it is currently a subtract.

- After the packets are received from the PHY, the latency between
  the receiving and timestamping of the packets should be a subtract
  operation, but it is currently an add.

Signed-off-by: Kshitiz Gupta <kshitiz.gupta@ni.com>
Fixes: 3f544d2 (igb: adjust ptp timestamps for tx/rx latency)
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2016-08-16 10:32:59 -07:00
..
e1000_82575.c igb: use BIT() macro or unsigned prefix 2016-05-13 14:39:47 -07:00
e1000_82575.h igb: use BIT() macro or unsigned prefix 2016-05-13 14:39:47 -07:00
e1000_defines.h igb: use BIT() macro or unsigned prefix 2016-05-13 14:39:47 -07:00
e1000_hw.h igb: constify e1000_phy_operations structure 2016-02-24 15:11:07 -08:00
e1000_i210.c igb: Remove GS40G specific defines/functions 2015-12-14 10:20:06 -08:00
e1000_i210.h igb: Remove GS40G specific defines/functions 2015-12-14 10:20:06 -08:00
e1000_mac.c igb: use BIT() macro or unsigned prefix 2016-05-13 14:39:47 -07:00
e1000_mac.h igb: Merge VLVF configuration into igb_vfta_set 2016-02-15 16:36:52 -08:00
e1000_mbx.c igb: use BIT() macro or unsigned prefix 2016-05-13 14:39:47 -07:00
e1000_mbx.h igb: Cleanups to change comment style on license headers 2014-04-24 17:26:27 -07:00
e1000_nvm.c igb: use BIT() macro or unsigned prefix 2016-05-13 14:39:47 -07:00
e1000_nvm.h igb: Cleanups to change comment style on license headers 2014-04-24 17:26:27 -07:00
e1000_phy.c igb: Improve cable length function for I210, etc. 2015-12-14 16:04:05 -08:00
e1000_phy.h igb: use BIT() macro or unsigned prefix 2016-05-13 14:39:47 -07:00
e1000_regs.h igb: improve handling of disconnected adapters 2015-12-12 23:51:26 -08:00
igb_ethtool.c igb: use BIT() macro or unsigned prefix 2016-05-13 14:39:47 -07:00
igb_hwmon.c igb: Cleanups to change comment style on license headers 2014-04-24 17:26:27 -07:00
igb_main.c PCI changes for the v4.8 merge window: 2016-08-02 17:12:29 -04:00
igb_ptp.c igb: fix adjusting PTP timestamps for Tx/Rx latency 2016-08-16 10:32:59 -07:00
igb.h igb: implement igb_ptp_suspend 2016-06-29 11:00:22 -07:00
Makefile igb: Update license text to remove FSF address and update copyright. 2014-02-26 15:54:52 -05:00