Merge branch 'ionic-ptp'
authorDavid S. Miller <davem@davemloft.net>
Fri, 2 Apr 2021 21:18:33 +0000 (14:18 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 2 Apr 2021 21:18:33 +0000 (14:18 -0700)
commitf3f409a9b7f5bb3619d648b9b4ba3df4c7723da8
tree91d198f149dbd33a9f9b5ca6bf9f135cc3ee2004
parentc2bcb4cf021121d7c162e44b7773281891e3abc2
parentafeefec6773607552c450ad2eeb43f39173c2d5c
Merge branch 'ionic-ptp'

Shannon Nelson says:

====================
ionic: add PTP and hw clock support

This patchset adds support for accessing the DSC hardware clock and
for offloading PTP timestamping.

Tx packet timestamping happens through a separate Tx queue set up with
expanded completion descriptors that can report the timestamp.

Rx timestamping can happen either on all queues, or on a separate
timestamping queue when specific filtering is requested.  Again, the
timestamps are reported with the expanded completion descriptors.

The timestamping offload ability is advertised but not enabled until an
OS service asks for it.  At that time the driver's queues are reconfigured
to use the different completion descriptors and the private processing
queues as needed.

Reading the raw clock value comes through a new pair of values in the
device info registers in BAR0.  These high and low values are interpreted
with help from new clock mask, mult, and shift values in the device
identity information.

First we add the ability to detect new queue features, then the handling
of the new descriptor sizes.  After adding the new interface structures,
we start adding the support code, saving the advertising to the stack
for last.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>