linux/drivers/net/ethernet/intel/ice
Jacob Keller ae39eb42dd ice: introduce ICE_TX_TSTAMP_WORK enumeration
The ice_ptp_process_ts() function and its various helper functions return a
boolean value indicating whether any work is remaining. This use of a
boolean has grown confusing as we have multiple helpers that pass status
between each other. Readers must be aware of what "true" and "false" mean,
and it is very easy to get their meaning inverted. The names of the
functions are not standard "yes/no" questions, which is the best practice
for boolean returns.

Replace this use of an enumeration with a custom type, enum
ice_tx_tstamp_work. This enumeration clearly indicates whether all work is
done, or if more work is pending.

To aid in readability, factor the actual list iteration and processing out
into ice_ptp_process_tx_tstamp(), making it void. Then call this in
ice_ptp_tx_tstamp() ensuring that we always check the Tracker list at the
end when determining the appropriate return value.

Now the return value is an explicit name instead of the true or false
value. This is easier to follow and makes reading the resulting callers
much simpler.

In addition, this paves the way for future work to allow E822 hardware to
process timestamps for all functions using a single interrupt on the clock
owning PF.

Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Arpana Arland <arpanax.arland@intel.com> (A Contingent worker at Intel)
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
2023-06-08 10:20:12 -07:00
..
ice.h ice: handle extts in the miscellaneous interrupt thread 2023-06-08 10:06:40 -07:00
ice_adminq_cmd.h ice: update ICE_PHY_TYPE_HIGH_MAX_INDEX 2023-05-17 08:38:22 -07:00
ice_arfs.c ice: add individual interrupt allocation 2023-05-16 09:38:38 -07:00
ice_arfs.h
ice_base.c ice: add dynamic interrupt allocation 2023-05-16 09:38:38 -07:00
ice_base.h
ice_cgu_regs.h
ice_common.c ice: sleep, don't busy-wait, in the SQ send retry loop 2023-04-20 16:33:14 -07:00
ice_common.h
ice_controlq.c ice: sleep, don't busy-wait, for ICE_CTL_Q_SQ_CMD_TIMEOUT 2023-04-20 16:33:14 -07:00
ice_controlq.h ice: sleep, don't busy-wait, for ICE_CTL_Q_SQ_CMD_TIMEOUT 2023-04-20 16:33:14 -07:00
ice_dcb.c
ice_dcb.h
ice_dcb_lib.c ice: Fix undersized tx_flags variable 2023-05-12 09:27:44 +01:00
ice_dcb_lib.h
ice_dcb_nl.c
ice_dcb_nl.h
ice_ddp.c
ice_ddp.h
ice_devids.h
ice_devlink.c devlink: move port_split/unsplit() ops into devlink_port_ops 2023-05-30 10:32:20 -07:00
ice_devlink.h
ice_eswitch.c ice: use src VSI instead of src MAC in slow-path 2023-05-19 09:10:39 -07:00
ice_eswitch.h ice: use src VSI instead of src MAC in slow-path 2023-05-19 09:10:39 -07:00
ice_ethtool.c ice: refactor PHY type to ethtool link mode 2023-05-17 08:42:10 -07:00
ice_ethtool.h ice: update PHY type to ethtool link mode mapping 2023-05-17 08:43:01 -07:00
ice_ethtool_fdir.c
ice_fdir.c
ice_fdir.h
ice_flex_pipe.c
ice_flex_pipe.h
ice_flex_type.h
ice_flow.c
ice_flow.h
ice_fltr.c
ice_fltr.h
ice_fw_update.c
ice_fw_update.h
ice_gnss.c ice: do not busy-wait to read GNSS data 2023-04-20 16:33:14 -07:00
ice_gnss.h ice: increase the GNSS data polling interval to 20 ms 2023-04-20 16:33:14 -07:00
ice_hw_autogen.h
ice_idc.c ice: add dynamic interrupt allocation 2023-05-16 09:38:38 -07:00
ice_idc_int.h
ice_irq.c ice: add dynamic interrupt allocation 2023-05-16 09:38:38 -07:00
ice_irq.h ice: add dynamic interrupt allocation 2023-05-16 09:38:38 -07:00
ice_lag.c ice: Remove LAG+SRIOV mutual exclusion 2023-05-17 08:43:47 -07:00
ice_lag.h ice: Remove LAG+SRIOV mutual exclusion 2023-05-17 08:43:47 -07:00
ice_lan_tx_rx.h
ice_lib.c Merge branch '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue 2023-05-18 20:04:59 -07:00
ice_lib.h ice: track interrupt vectors with xarray 2023-05-16 09:38:38 -07:00
ice_main.c ice: introduce ICE_TX_TSTAMP_WORK enumeration 2023-06-08 10:20:12 -07:00
ice_nvm.c
ice_nvm.h
ice_osdep.h
ice_pf_vsi_vlan_ops.c
ice_pf_vsi_vlan_ops.h
ice_protocol_type.h ice: use src VSI instead of src MAC in slow-path 2023-05-19 09:10:39 -07:00
ice_ptp.c ice: introduce ICE_TX_TSTAMP_WORK enumeration 2023-06-08 10:20:12 -07:00
ice_ptp.h ice: introduce ICE_TX_TSTAMP_WORK enumeration 2023-06-08 10:20:12 -07:00
ice_ptp_consts.h
ice_ptp_hw.c
ice_ptp_hw.h
ice_repr.c ice: use src VSI instead of src MAC in slow-path 2023-05-19 09:10:39 -07:00
ice_repr.h ice: use src VSI instead of src MAC in slow-path 2023-05-19 09:10:39 -07:00
ice_sbq_cmd.h
ice_sched.c
ice_sched.h
ice_sriov.c Merge branch '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue 2023-05-18 20:04:59 -07:00
ice_sriov.h
ice_switch.c ice: use src VSI instead of src MAC in slow-path 2023-05-19 09:10:39 -07:00
ice_switch.h ice: use src VSI instead of src MAC in slow-path 2023-05-19 09:10:39 -07:00
ice_tc_lib.c ice: allow matching on meta data 2023-05-19 09:09:52 -07:00
ice_tc_lib.h ice: allow matching on meta data 2023-05-19 09:09:52 -07:00
ice_trace.h
ice_txrx.c ice: recycle/free all of the fragments from multi-buffer frame 2023-06-01 09:59:39 -07:00
ice_txrx.h ice: Fix undersized tx_flags variable 2023-05-12 09:27:44 +01:00
ice_txrx_lib.c
ice_txrx_lib.h
ice_type.h
ice_vf_lib.c ice: use src VSI instead of src MAC in slow-path 2023-05-19 09:10:39 -07:00
ice_vf_lib.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2023-05-18 14:39:34 -07:00
ice_vf_lib_private.h
ice_vf_mbx.c
ice_vf_mbx.h
ice_vf_vsi_vlan_ops.c
ice_vf_vsi_vlan_ops.h
ice_virtchnl.c ice: use src VSI instead of src MAC in slow-path 2023-05-19 09:10:39 -07:00
ice_virtchnl.h
ice_virtchnl_allowlist.c
ice_virtchnl_allowlist.h
ice_virtchnl_fdir.c ice: Reset FDIR counter in FDIR init stage 2023-04-04 08:34:52 -07:00
ice_virtchnl_fdir.h
ice_vlan.h
ice_vlan_mode.c ice: define meta data to match in switch 2023-05-19 08:57:43 -07:00
ice_vlan_mode.h
ice_vsi_vlan_lib.c
ice_vsi_vlan_lib.h
ice_vsi_vlan_ops.c
ice_vsi_vlan_ops.h
ice_xsk.c ice: add individual interrupt allocation 2023-05-16 09:38:38 -07:00
ice_xsk.h
Makefile ice: move interrupt related code to separate file 2023-05-16 09:16:53 -07:00