netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/8] net: ipa: abstract status parsing
@ 2023-01-25 20:45 Alex Elder
  2023-01-25 20:45 ` [PATCH net-next 1/8] net: ipa: refactor status buffer parsing Alex Elder
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: Alex Elder @ 2023-01-25 20:45 UTC (permalink / raw)
  To: davem, edumazet, kuba, pabeni
  Cc: caleb.connolly, mka, evgreen, andersson, quic_cpratapa,
	quic_avuyyuru, quic_jponduru, quic_subashab, elder, netdev,
	linux-arm-msm, linux-kernel

Under some circumstances, IPA generates a "packet status" structure
that describes information about a packet.  This is used, for
example, when offload hardware detects an error in a packet, or
otherwise discovers a packet needs special handling.  In this case,
the status is delivered (along with the packet it describes) to a
"default" endpoint so that it can be handled by the AP.

Until now, the structure of this status information hasn't changed.
However, to support more than 32 endpoints, this structure required
some changes, such that some fields are rearranged in ways that are
tricky to represent using C code.

This series updates code related to the IPA status structure.  The
first patch uses a local variable to avoid recomputing a packet
length more than once.  The second stops using sizeof() to determine
the size of an IPA packet status structure.  Patches 3-5 extend the
definitions for values held in packet status fields.  Patch 6 does a
little general cleanup to make patch 7 simpler.  Patch 7 stops using
a C structure to represent packet status; instead, a new function
fetches values "by name" from a buffer containing such a structure.
The last patch updates this function so it also supports IPA v5.0+.

					-Alex

Alex Elder (8):
  net: ipa: refactor status buffer parsing
  net: ipa: stop using sizeof(status)
  net: ipa: define all IPA status mask bits
  net: ipa: rename the NAT enumerated type
  net: ipa: define remaining IPA status field values
  net: ipa: IPA status preparatory cleanups
  net: ipa: introduce generalized status decoder
  net: ipa: add IPA v5.0 packet status support

 drivers/net/ipa/ipa_endpoint.c | 280 +++++++++++++++++++++++++--------
 drivers/net/ipa/ipa_reg.h      |  10 +-
 2 files changed, 217 insertions(+), 73 deletions(-)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2023-01-27 11:29 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-25 20:45 [PATCH net-next 0/8] net: ipa: abstract status parsing Alex Elder
2023-01-25 20:45 ` [PATCH net-next 1/8] net: ipa: refactor status buffer parsing Alex Elder
2023-01-25 20:45 ` [PATCH net-next 2/8] net: ipa: stop using sizeof(status) Alex Elder
2023-01-25 20:45 ` [PATCH net-next 3/8] net: ipa: define all IPA status mask bits Alex Elder
2023-01-25 20:45 ` [PATCH net-next 4/8] net: ipa: rename the NAT enumerated type Alex Elder
2023-01-25 20:45 ` [PATCH net-next 5/8] net: ipa: define remaining IPA status field values Alex Elder
2023-01-25 20:45 ` [PATCH net-next 6/8] net: ipa: IPA status preparatory cleanups Alex Elder
2023-01-25 20:45 ` [PATCH net-next 7/8] net: ipa: introduce generalized status decoder Alex Elder
2023-01-25 20:45 ` [PATCH net-next 8/8] net: ipa: add IPA v5.0 packet status support Alex Elder
2023-01-27 11:20 ` [PATCH net-next 0/8] net: ipa: abstract status parsing patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).