This patch-set is to add one-step timestamping support for PTP Sync
packet. Since ENETC single-step register has to be configured dynamically
per packet for correctionField offeset and UDP checksum update, current
one-step timestamping packet has to be sent only when the last one
completes transmitting on hardware. So, on the TX the patch implements
below process:
- For one-step timestamping packet, queue to skb queue.
- Start a work to transmit skbs in queue.
- For other skbs, transmit immediately.
- mutex lock used to ensure the last one-step timestamping packet has
already been transmitted on hardware before transmitting current one.
Changes for v2:
- Rebased.
- Fixed issues from patchwork checks.
- netif_tx_lock for one-step timestamping packet sending.
Yangbo Lu (2):
enetc: mark TX timestamp type per skb
enetc: support PTP Sync packet one-step timestamping
drivers/net/ethernet/freescale/enetc/enetc.c | 212 ++++++++++++++++--
drivers/net/ethernet/freescale/enetc/enetc.h | 24 +-
.../ethernet/freescale/enetc/enetc_ethtool.c | 3 +-
.../net/ethernet/freescale/enetc/enetc_hw.h | 7 +
4 files changed, 220 insertions(+), 26 deletions(-)
base-commit: 3cd52c1e32fe7dfee09815ced702db9ee9f84ec9
--
2.25.1