]> www.infradead.org Git - users/jedix/linux-maple.git/commit
eth: fbnic: add IP TCAM programming
authorAlexander Duyck <alexanderduyck@fb.com>
Thu, 6 Feb 2025 23:53:31 +0000 (15:53 -0800)
committerJakub Kicinski <kuba@kernel.org>
Mon, 10 Feb 2025 16:26:50 +0000 (08:26 -0800)
commit3a265bd6a3ba27ff56a686d845e959ce365edcaa
tree8780867a02485345c752746943de72c6748817a8
parent260676ebb1f3b188796a045e0ecf79a699b8e857
eth: fbnic: add IP TCAM programming

IPv6 addresses are huge so the device has 4 TCAMs used for narrowing
them down to a smaller key before the main match / action engine.

Add the tables in which we'll keep the IP addresses used by
ethtool n-tuple rules. Add the code for programming them
into the device, and code for allocating and freeing entries.

A bit of copy / paste here as we need to support IPv4 and
IPv6 in the same tables, and there is four of them.
But it makes the code easier to match up with the device.

Signed-off-by: Alexander Duyck <alexanderduyck@fb.com>
Link: https://patch.msgid.link/20250206235334.1425329-5-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/meta/fbnic/fbnic.h
drivers/net/ethernet/meta/fbnic/fbnic_csr.h
drivers/net/ethernet/meta/fbnic/fbnic_rpc.c
drivers/net/ethernet/meta/fbnic/fbnic_rpc.h