1
0
Fork 0
alistair23-linux/drivers/net/ethernet/marvell
Maxime Chevallier b1a962c62c net: mvpp2: use classifier to assign default rx queue
The PPv2 Controller has a classifier, that can perform multiple lookup
operations for each packet, using different engines.

One of these engines is the C2 engine, which performs TCAM based lookups
on data extracted from the packet header. When a packet matches an
entry, the engine sets various attributes, used to perform
classification operations.

One of these attributes is the rx queue in which the packet should be sent.
The current code uses the lookup_id table (also called decoding table)
to assign the rx queue. However, this only works if we use one entry per
port in the decoding table, which won't be the case once we add RSS
lookups.

This patch uses the C2 engine to assign the rx queue to each packet.

The C2 engine is used through the flow table, which dictates what
classification operations are done for a given flow.

Right now, we have one flow per port, which contains every ingress
packet for this port.

Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-07-12 17:30:49 -07:00
..
mvpp2 net: mvpp2: use classifier to assign default rx queue 2018-07-12 17:30:49 -07:00
Kconfig net: Remove depends on HAS_DMA in case of platform dependency 2018-06-23 10:44:30 +09:00
Makefile net: mvpp2: Split the PPv2 driver to a dedicated directory 2018-06-01 11:29:35 -04:00
mv643xx_eth.c treewide: setup_timer() -> timer_setup() 2017-11-21 15:57:07 -08:00
mvmdio.c drivers: net: Remove device_node checks with of_mdiobus_register() 2018-05-16 14:20:36 -04:00
mvneta.c net: mvneta: fix the Rx desc DMA address in the Rx path 2018-06-23 10:40:15 +09:00
mvneta_bm.c net: mvneta: Fix lacking spinlock initialization 2016-05-25 12:35:08 -07:00
mvneta_bm.h net: mvneta: use IS_ENABLED() instead of checking for built-in or module 2016-09-12 20:27:59 -07:00
pxa168_eth.c net: pxa168_eth: add netconsole support 2018-02-01 14:58:37 -05:00
skge.c ethernet: Use octal not symbolic permissions 2018-03-26 12:07:49 -04:00
skge.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sky2.c sky2: Increase D3 delay to sky2 stops working after suspend 2018-04-01 20:54:41 -04:00
sky2.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00