mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH net-next 0/5] net: lan966x: Add support for IS1 VCAP
@ 2023-03-07 22:09 Horatiu Vultur
  2023-03-07 22:09 ` [PATCH net-next 1/5] net: lan966x: Add IS1 VCAP model Horatiu Vultur
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Horatiu Vultur @ 2023-03-07 22:09 UTC (permalink / raw)
  To: netdev, linux-kernel, linux-arm-kernel
  Cc: davem, edumazet, kuba, pabeni, lars.povlsen, Steen.Hegelund,
	daniel.machon, UNGLinuxDriver, Horatiu Vultur

Provide the Ingress Stage 1 (IS1) VCAP (Versatile Content-Aware
Processor) support for the Lan966x platform.

The IS1 VCAP has 3 lookups and they are accessible with a TC chain id:
- chain 1000000: IS1 Lookup 0
- chain 1100000: IS1 Lookup 1
- chain 1200000: IS1 Lookup 2

The IS1 is capable of different actions like rewrite VLAN tags, change
priority of the frames, police the traffic, etc. These features will be
added at a later point.

The IS1 currently implements the action that allows setting the value
of a PAG (Policy Association Group) key field in the frame metadata and
this can be used for matching in an IS2 VCAP rule. In this way a rule in
IS0 VCAP can be linked to rules in the IS2 VCAP. The linking is exposed
by using the TC "goto chain" action with an offset from the IS2 chain ids.
For example "goto chain 8000001" will use a PAG value of 1 to chain to a
rule in IS2 lookup 0.

Horatiu Vultur (5):
  net: lan966x: Add IS1 VCAP model
  net: lan966x: Add IS1 VCAP keyset configuration for lan966x
  net: lan966x: Add TC support for IS1 VCAP
  net: lan966x: Add TC filter chaining support for IS1 and IS2 VCAPs
  net: lan966x: Add support for IS1 VCAP ethernet protocol types

 .../ethernet/microchip/lan966x/lan966x_main.h |   38 +
 .../ethernet/microchip/lan966x/lan966x_regs.h |   36 +
 .../microchip/lan966x/lan966x_tc_flower.c     |  221 ++-
 .../microchip/lan966x/lan966x_vcap_ag_api.c   | 1402 ++++++++++++++++-
 .../microchip/lan966x/lan966x_vcap_debugfs.c  |  133 +-
 .../microchip/lan966x/lan966x_vcap_impl.c     |  192 ++-
 .../net/ethernet/microchip/vcap/vcap_ag_api.h |  217 ++-
 .../microchip/vcap/vcap_api_debugfs_kunit.c   |    4 +-
 8 files changed, 2156 insertions(+), 87 deletions(-)

-- 
2.38.0


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

end of thread, other threads:[~2023-03-11  0:53 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-07 22:09 [PATCH net-next 0/5] net: lan966x: Add support for IS1 VCAP Horatiu Vultur
2023-03-07 22:09 ` [PATCH net-next 1/5] net: lan966x: Add IS1 VCAP model Horatiu Vultur
2023-03-07 22:09 ` [PATCH net-next 2/5] net: lan966x: Add IS1 VCAP keyset configuration for lan966x Horatiu Vultur
2023-03-07 22:09 ` [PATCH net-next 3/5] net: lan966x: Add TC support for IS1 VCAP Horatiu Vultur
2023-03-07 22:09 ` [PATCH net-next 4/5] net: lan966x: Add TC filter chaining support for IS1 and IS2 VCAPs Horatiu Vultur
2023-03-07 22:09 ` [PATCH net-next 5/5] net: lan966x: Add support for IS1 VCAP ethernet protocol types Horatiu Vultur
2023-03-11  0:50 ` [PATCH net-next 0/5] net: lan966x: Add support for IS1 VCAP 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

all inboxes | Powered by JetHome®