[PATCH net-next v3 0/4] XDP Rx HWTS metadata for stmmac driver

From: Song Yoong Siang
Date: Wed Apr 12 2023 - 05:43:24 EST


Implemented XDP receive hardware timestamp metadata for stmmac driver.

This patchset is tested with tools/testing/selftests/bpf/xdp_hw_metadata.
Below are the test steps and results.

Command on DUT:
sudo ./xdp_hw_metadata <interface name>

Command on Link Partner:
echo -n xdp | nc -u -q1 <destination IPv4 addr> 9091
echo -n skb | nc -u -q1 <destination IPv4 addr> 9092

Result for port 9091:
0x55fdb5f006d0: rx_desc[3]->addr=1000000003bd000 addr=3bd100 comp_addr=3bd000
rx_timestamp: 1677762474360150047
rx_hash: 0
0x55fdb5f006d0: complete idx=515 addr=3bd000

Result for port 9092:
found skb hwtstamp = 1677762476.320146161

Changes since v2:
* To reduce packet processing cost, get the Rx HWTS only when xmo_rx_timestamp() is called

Changes since v1:
* Add static to stmmac_xdp_metadata_ops declaration

---

Ong Boon Leong (1):
net: stmmac: restructure Rx hardware timestamping function

Song Yoong Siang (3):
net: stmmac: introduce wrapper for struct xdp_buff
net: stmmac: add Rx HWTS metadata to XDP receive pkt
net: stmmac: add Rx HWTS metadata to XDP ZC receive pkt

drivers/net/ethernet/stmicro/stmmac/stmmac.h | 7 ++
.../net/ethernet/stmicro/stmmac/stmmac_main.c | 87 +++++++++++++++----
2 files changed, 76 insertions(+), 18 deletions(-)

--
2.34.1