[PATCH net-next 0/4] net: ipa: IPA v4.5 aggregation and Qtime

From: Alex Elder
Date: Mon Nov 30 2020 - 18:37:59 EST


This series updates some IPA register definitions that change in
substantive ways for IPA v4.5.

One register defines parameters used by an endpoint to aggregate
multiple packets into a buffer. The size and position of most
fields in that register have changed with this new hardware version,
and consequently the function that programs it needs to be done a
bit differently. The first patch takes care of this.

Second, IPA v4.5 introduces a unified time keeping component to be
used in several places by the IPA hardware. A main clock divider
provides a fundamental tick rate, and several timestamped features
now define their granularity based on that. There is also a set of
"pulse generators" derived from the main tick, and these are used
to implement timers used for aggregation and head-of-line block
avoidance. The second patch adds IPA register updates to support
Qtime along with its configuration, and the last two patches
configure the timers that use it.

-Alex

Alex Elder (4):
net: ipa: update IPA aggregation registers for IPA v4.5
net: ipa: set up IPA v4.5 Qtime configuration
net: ipa: use Qtime for IPA v4.5 aggregation time limit
net: ipa: use Qtime for IPA v4.5 head-of-line time limit

drivers/net/ipa/ipa_endpoint.c | 174 +++++++++++++++++++++++++--------
drivers/net/ipa/ipa_main.c | 67 ++++++++++++-
drivers/net/ipa/ipa_reg.h | 68 +++++++++++--
3 files changed, 260 insertions(+), 49 deletions(-)

--
2.20.1