| # SPDX-License-Identifier: GPL-2.0-only |
| # |
| # Microchip VCAP API configuration |
| # |
| |
| if NET_VENDOR_MICROCHIP |
| |
| config VCAP |
| bool "VCAP (Versatile Content-Aware Processor) library" |
| help |
| Provides the basic VCAP functionality for multiple Microchip switchcores |
| |
| A VCAP is essentially a TCAM with rules consisting of |
| |
| - Programmable key fields |
| - Programmable action fields |
| - A counter (which may be only one bit wide) |
| |
| Besides this each VCAP has: |
| |
| - A number of lookups |
| - A keyset configuration per port per lookup |
| |
| The VCAP implementation provides switchcore independent handling of rules |
| and supports: |
| |
| - Creating and deleting rules |
| - Updating and getting rules |
| |
| The platform specific configuration as well as the platform specific model |
| of the VCAP instances are attached to the VCAP API and a client can then |
| access rules via the API in a platform independent way, with the |
| limitations that each VCAP has in terms of its supported keys and actions. |
| |
| Different switchcores will have different VCAP instances with different |
| characteristics. Look in the datasheet for the VCAP specifications for the |
| specific switchcore. |
| |
| config VCAP_KUNIT_TEST |
| bool "KUnit test for VCAP library" if !KUNIT_ALL_TESTS |
| depends on KUNIT |
| depends on KUNIT=y && VCAP=y && y |
| select DEBUG_FS |
| default KUNIT_ALL_TESTS |
| help |
| This builds unit tests for the VCAP library. |
| |
| For more information on KUnit and unit tests in general, please refer |
| to the KUnit documentation in Documentation/dev-tools/kunit/. |
| |
| If unsure, say N. |
| |
| endif # NET_VENDOR_MICROCHIP |