Merge branch 'net-lan966x-add-support-for-is1-vcap'
authorJakub Kicinski <kuba@kernel.org>
Sat, 11 Mar 2023 00:44:26 +0000 (16:44 -0800)
committerJakub Kicinski <kuba@kernel.org>
Sat, 11 Mar 2023 00:44:27 +0000 (16:44 -0800)
commitae913318bcc8ba2a9ae350c16605ea6e5c382a97
tree002fc0608e79f89950db08f1ca23ed95ab51b116
parentcc4342f60f1a6d0f4a30ae1887a75834d0109444
parent44d706fde75518781f6859febb0979cf5e7327d4
Merge branch 'net-lan966x-add-support-for-is1-vcap'

Horatiu Vultur says:

====================
net: lan966x: Add support for IS1 VCAP

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.
====================

Link: https://lore.kernel.org/r/20230307220929.834219-1-horatiu.vultur@microchip.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>