[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200925121855.370863-1-vladimir.oltean@nxp.com>
Date: Fri, 25 Sep 2020 15:18:41 +0300
From: Vladimir Oltean <vladimir.oltean@....com>
To: davem@...emloft.net
Cc: alexandre.belloni@...tlin.com, andrew@...n.ch,
f.fainelli@...il.com, vivien.didelot@...il.com,
horatiu.vultur@...rochip.com, joergen.andreasen@...rochip.com,
allan.nielsen@...rochip.com, alexandru.marginean@....com,
claudiu.manoil@....com, netdev@...r.kernel.org,
UNGLinuxDriver@...rochip.com
Subject: [RFC PATCH net-next 00/14] Offload tc-flower using VCAP chains
This is the result of this discussion:
https://lkml.org/lkml/2020/6/2/203
RFC because there are still some TODO items:
- I haven't added VCAP fields to Ocelot and to Seville, mostly because I
don't understand how to derive the ENTRY_WIDTH setting. Would
appreciate some help there. I've only tested this on Felix.
- The selftests script is rather bare bones, not sure what to add to it
to make it more comprehensive. Understanding that this is the go-to
reference for any user, it would need to be pretty clear how the thing
can be used.
Comments appreciated.
Vladimir Oltean (11):
net: mscc: ocelot: introduce a new ocelot_target_{read,write} API
net: mscc: ocelot: generalize existing code for VCAP
net: mscc: ocelot: offload multiple tc-flower actions in same rule
net: mscc: ocelot: add a new ocelot_vcap_block_find_filter_by_id
function
net: mscc: ocelot: look up the filters in flower_stats() and
flower_destroy()
net: mscc: ocelot: introduce conversion helpers between port and
netdev
net: mscc: ocelot: create TCAM skeleton from tc filter chains
net: mscc: ocelot: only install TCAM entries into a specific lookup
and PAG
net: mscc: ocelot: relax ocelot_exclusive_mac_etype_filter_rules()
net: mscc: ocelot: offload redirect action to VCAP IS2
selftests: ocelot: add some example VCAP IS1, IS2 and ES0 tc offloads
Xiaoliang Yang (3):
net: mscc: ocelot: change vcap to be compatible with full and quad
entry
net: mscc: ocelot: offload ingress skbedit and vlan actions to VCAP
IS1
net: mscc: ocelot: offload egress VLAN rewriting to VCAP ES0
MAINTAINERS | 1 +
drivers/net/dsa/ocelot/felix.c | 24 +-
drivers/net/dsa/ocelot/felix.h | 5 +-
drivers/net/dsa/ocelot/felix_vsc9959.c | 188 ++++-
drivers/net/dsa/ocelot/seville_vsc9953.c | 27 +-
drivers/net/ethernet/mscc/ocelot.c | 11 +
drivers/net/ethernet/mscc/ocelot.h | 2 +
drivers/net/ethernet/mscc/ocelot_flower.c | 485 ++++++++++-
drivers/net/ethernet/mscc/ocelot_io.c | 17 +
drivers/net/ethernet/mscc/ocelot_net.c | 30 +
drivers/net/ethernet/mscc/ocelot_s2.h | 64 --
drivers/net/ethernet/mscc/ocelot_vcap.c | 794 ++++++++++++------
drivers/net/ethernet/mscc/ocelot_vcap.h | 98 ++-
drivers/net/ethernet/mscc/ocelot_vsc7514.c | 27 +-
include/soc/mscc/ocelot.h | 43 +-
include/soc/mscc/ocelot_vcap.h | 200 ++++-
.../drivers/net/ocelot/test_tc_chains.sh | 179 ++++
17 files changed, 1800 insertions(+), 395 deletions(-)
delete mode 100644 drivers/net/ethernet/mscc/ocelot_s2.h
create mode 100755 tools/testing/selftests/drivers/net/ocelot/test_tc_chains.sh
--
2.25.1
Powered by blists - more mailing lists