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