linux_dsm_epyc7002/drivers/net/ethernet/intel/ixgbe
Jacob Keller cd45832069 ixgbe: implement support for SDP/PPS output on X550 hardware
Similar to the X540 hardware, enable support for generating a 1pps
output signal on SDP0.

This support is slightly different to the X540 hardware, because of the
register layout changes. First, the system time register is now
represented in 'cycles' and 'billions of cycles'. Second, we need to
also program the TSSDP register, as well as the ESDP register. Third,
the clock output uses only FREQOUT, instead of a full 64bit value for
the output clock period. Finally, we have to use the ST0 bit instead of
the SYNCLK bit in the TSAUXC register.

This support should work even for the hardware with a higher frequency
clock, as it carefully takes into account the multiply and shift of the
cycle counter used.

We also set the pps configuration to 1, since we now support generating
a pulse per second output.

Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2019-06-05 13:04:30 -07:00
..
ixgbe_82598.c net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_82599.c ixgbe: remove magic constant in ixgbe_reset_hw_82599() 2019-02-05 16:08:54 -08:00
ixgbe_common.c ixgbe: remove redundant function ixgbe_fw_recovery_mode() 2018-10-03 12:28:04 -07:00
ixgbe_common.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_dcb_82598.c net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_dcb_82598.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_dcb_82599.c net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_dcb_82599.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_dcb_nl.c net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_dcb.c net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_dcb.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_debugfs.c ixgbe: introduce a helper to simplify code 2018-06-04 10:21:13 -07:00
ixgbe_ethtool.c i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE 2018-11-07 09:47:01 -08:00
ixgbe_fcoe.c ixgbe: Replace GFP_ATOMIC with GFP_KERNEL 2018-08-24 08:52:35 -07:00
ixgbe_fcoe.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_ipsec.c xfrm: prefer secpath_set over secpath_dup 2018-12-19 11:21:38 -08:00
ixgbe_ipsec.h ixgbe: add VF IPsec management 2018-08-28 14:33:03 -07:00
ixgbe_lib.c ixgbe: Use struct_size() helper 2019-02-08 23:03:48 -08:00
ixgbe_main.c ixgbe: add tracking of AF_XDP zero-copy state for each queue pair 2019-06-05 13:04:29 -07:00
ixgbe_mbx.c net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_mbx.h ixgbe: add VF IPsec offload request message handling 2018-08-28 14:33:14 -07:00
ixgbe_model.h ixgbe: cleanup sparse warnings 2018-05-17 08:24:30 -07:00
ixgbe_phy.c ixgbe: fix mdio bus registration 2019-03-26 16:14:24 -07:00
ixgbe_phy.h ixgbe: register a mdiobus 2018-12-20 12:19:11 -08:00
ixgbe_ptp.c ixgbe: implement support for SDP/PPS output on X550 hardware 2019-06-05 13:04:30 -07:00
ixgbe_sriov.c ixgbe: Use LLDP ethertype define ETH_P_LLDP 2019-06-05 13:04:29 -07:00
ixgbe_sriov.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_sysfs.c net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_txrx_common.h net: bpf: remove XDP_QUERY_XSK_UMEM enumerator 2019-02-15 15:14:22 +01:00
ixgbe_type.h ixgbe: implement support for SDP/PPS output on X550 hardware 2019-06-05 13:04:30 -07:00
ixgbe_x540.c net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_x540.h net: intel: Cleanup the copyright/license headers 2018-04-27 14:00:04 -04:00
ixgbe_x550.c ixgbe: recognize 1000BaseLX SFP modules as 1Gbps 2018-11-28 08:29:49 -08:00
ixgbe_xsk.c ixgbe: fix AF_XDP tx packet count 2019-06-05 13:04:29 -07:00
ixgbe.h ixgbe: Use LLDP ethertype define ETH_P_LLDP 2019-06-05 13:04:29 -07:00
Makefile ixgbe/ixgbevf: fix XFRM_ALGO dependency 2018-10-31 10:53:15 -07:00