xref: /openbmc/linux/drivers/net/ethernet/microchip/vcap/Kconfig (revision 8beef08f4618c9bfab9374fc72930fc6ed70fdc1)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Microchip VCAP API configuration
4#
5
6if NET_VENDOR_MICROCHIP
7
8config VCAP
9	bool "VCAP (Versatile Content-Aware Processor) library"
10	help
11	  Provides the basic VCAP functionality for multiple Microchip switchcores
12
13	  A VCAP is essentially a TCAM with rules consisting of
14
15	    - Programmable key fields
16	    - Programmable action fields
17	    - A counter (which may be only one bit wide)
18
19	  Besides this each VCAP has:
20
21	    - A number of lookups
22	    - A keyset configuration per port per lookup
23
24	  The VCAP implementation provides switchcore independent handling of rules
25	  and supports:
26
27	    - Creating and deleting rules
28	    - Updating and getting rules
29
30	  The platform specific configuration as well as the platform specific model
31	  of the VCAP instances are attached to the VCAP API and a client can then
32	  access rules via the API in a platform independent way, with the
33	  limitations that each VCAP has in terms of its supported keys and actions.
34
35	  Different switchcores will have different VCAP instances with different
36	  characteristics. Look in the datasheet for the VCAP specifications for the
37	  specific switchcore.
38
39endif # NET_VENDOR_MICROCHIP
40