opnsense-src/sys/dev/cxgbe
Randall Stewart e398922eaf Enable M_TSTMP in Chelsio cxgbe driver by creating a mechanism that can sync the time.
Chelsio has always been recording a timestamp in the mbuf (rcv_tstmp) but
not setting the M_TSTMP bit in the mbuf flags. This is because the timestamp
was just the free running 60bit clock. This change fixes that so that
we keep a synchronization by periodically (every 30 seconds after startup)
getting the timestamp and the current nanosecond time. We always keep
several sets around and the current one we always keep the current pair
and the previous pair of timestamps. This allows us to setup a ratio
between the two so we can correctly translate the time. Note that
we use special care to split the timestamp into seconds (per the clock tick)
and nanoseconds otherwise 64bit math would overflow.

Reviewed by: np
Sponsored by: Netflix Inc
Differential Revision: https://reviews.freebsd.org/D36315
2022-09-20 15:13:16 -04:00
..
common cxgbe(4): Decode and display some more bits in the PL interrupt handler. 2022-08-16 01:07:36 -07:00
crypto cxgbe: Handle requests for TLS key allocations with no TLS key storage. 2022-08-08 11:21:54 -07:00
cudbg Fix clang 15 warning in cxgbe 2022-07-17 19:57:03 +02:00
cxgbei cxgbei: Adjust the calculation for the maximum ISO payload. 2022-05-26 14:32:54 -07:00
firmware cxgbe(4): Update firmwares to 1.27.0.0. 2022-08-16 01:06:32 -07:00
iw_cxgbe cxgbe(4): Fix a typo in a source code comment 2022-07-16 13:38:57 +02:00
tom protosw: refactor protosw and domain static declaration and load 2022-08-17 11:50:32 -07:00
adapter.h Enable M_TSTMP in Chelsio cxgbe driver by creating a mechanism that can sync the time. 2022-09-20 15:13:16 -04:00
if_cc.c cxgbe(4): Attach to cards with the Terminator 6 ASIC. T6 cards will 2016-09-16 00:08:37 +00:00
if_ccv.c cxgbe(4): Attach to cards with the Terminator 6 ASIC. T6 cards will 2016-09-16 00:08:37 +00:00
if_cxl.c cxgbe(4): Add a minimal if_cxl module that pulls in the real driver as 2015-02-06 01:10:04 +00:00
if_cxlv.c Chelsio T4/T5 VF driver. 2016-09-07 18:13:57 +00:00
offload.h cxgbei: Support for ISO (iSCSI segmentation offload). 2021-08-06 14:21:37 -07:00
osdep.h cxgbe(4): make the logging helpers a little more robust. 2021-04-22 15:28:43 -07:00
t4_clip.c cxgbe(4): Empty the clib_db before trying to destroy it. 2021-06-04 12:01:14 -07:00
t4_clip.h cxgbe(4): Overhaul CLIP (Compressed Local IPv6) table management. 2021-05-23 16:07:29 -07:00
t4_filter.c cxgbe(4): Add support for NIC suspend/resume and live reset. 2021-04-27 22:48:51 -07:00
t4_if.m Use the port device name for the iov device for Chelsio T4/T5 cards. 2016-08-03 17:11:08 +00:00
t4_ioctl.h cxgbe/t4_tom: Support for round-robin selection of offload queues. 2022-04-14 15:49:58 -07:00
t4_iov.c cxgbe: Remove unused devclass arguments to *DRIVER_MODULE(). 2022-04-19 10:44:08 -07:00
t4_l2t.c NIC KTLS for Chelsio T6 adapters. 2019-11-21 19:30:31 +00:00
t4_l2t.h NIC KTLS for Chelsio T6 adapters. 2019-11-21 19:30:31 +00:00
t4_main.c Enable M_TSTMP in Chelsio cxgbe driver by creating a mechanism that can sync the time. 2022-09-20 15:13:16 -04:00
t4_mp_ring.c cxgbe(4): changes in the Tx path to help increase tx coalescing. 2020-07-03 04:44:23 +00:00
t4_mp_ring.h cxgbe(4): changes in the Tx path to help increase tx coalescing. 2020-07-03 04:44:23 +00:00
t4_netmap.c cxgbe(4): Add another setting to the knob that controls congestion. 2022-09-12 11:40:29 -07:00
t4_sched.c Add a switch structure for send tags. 2021-09-14 11:43:41 -07:00
t4_sge.c Enable M_TSTMP in Chelsio cxgbe driver by creating a mechanism that can sync the time. 2022-09-20 15:13:16 -04:00
t4_smt.c cxgbe(4): Move all control queues to the adapter. 2018-08-11 21:10:08 +00:00
t4_smt.h cxgbe(4): Retire an old check. 2018-06-01 01:05:34 +00:00
t4_tracer.c Adjust t4_tracer_mod{load,unload}() definitions to avoid clang 15 warnings 2022-07-19 20:37:02 +02:00
t4_vf.c cxgbe: Remove unused devclass arguments to *DRIVER_MODULE(). 2022-04-19 10:44:08 -07:00