Lines Matching full:vcap
2 /* Microchip Sparx5 Switch driver VCAP implementation
17 #define SUPER_VCAP_BLK_SIZE 3072 /* addresses per Super VCAP block */
18 #define STREAMSIZE (64 * 4) /* bytes in the VCAP cache area */
53 enum vcap_type vtype; /* type of vcap */
55 int lookups; /* number of lookups in this vcap type */
57 int first_cid; /* first chain id in this vcap */
58 int last_cid; /* last chain id in this vcap */
59 int count; /* number of available addresses, not in super vcap */
60 int map_id; /* id in the super vcap block mapping (if applicable) */
61 int blockno; /* starting block in super vcap (if applicable) */
62 int blocks; /* number of blocks in super vcap (if applicable) */
63 bool ingress; /* is vcap in the ingress path */
172 pr_err("%s: vcap type: %s not supported\n", in sparx5_vcap_type_err()
176 /* Await the super VCAP completion of the current operation */
186 /* Await the ES0 VCAP completion of the current operation */
196 /* Await the ES2 VCAP completion of the current operation */
206 /* Initializing a VCAP address range */
263 /* Initializing VCAP rule data area */
272 /* Get the keyset name from the sparx5 VCAP model */
360 /* Convert IS0 chain id to vcap lookup id */
379 /* Convert IS2 chain id to vcap lookup id */
394 /* Convert ES2 chain id to vcap lookup id */
420 /* Return the list of keysets for the vcap port configuration */
474 /* Return the list of keysets for the vcap port configuration */
576 /* Return the keysets for the vcap port IP4 traffic class configuration */
604 /* Return the list of keysets for the vcap port configuration */
628 /* Return the list of keysets for the vcap port configuration */
691 /* Get the port keyset for the vcap lookup */
728 /* Check if the ethertype is supported by the vcap port classification */
909 /* API callback used for erasing the vcap cache area (not the register area) */
1102 /* API callback used for writing to the VCAP cache */
1292 /* API callback used for reading from the VCAP into the VCAP cache */
1321 /* API callback used for initializing a VCAP address range */
1389 /* API callback used for updating the VCAP cache */
1474 /* API callback used for moving a block of rules in the VCAP */
1951 /* Allocate a vcap instance with a rule list and a cache area */
1986 /* Do block allocations and provide addresses for VCAP instances */
1996 /* Super VCAP block mapping and address configuration. Block 0 in sparx5_vcap_block_alloc()
2042 /* Allocate a vcap control and vcap instances and configure the system */
2051 /* Create a VCAP control instance that owns the platform specific VCAP in sparx5_vcap_init()
2052 * model with VCAP instances and information about keysets, keys, in sparx5_vcap_init()
2054 * - Create administrative state for each available VCAP in sparx5_vcap_init()
2057 * - Initialize VCAP blocks in sparx5_vcap_init()
2065 /* select the sparx5 VCAP model */ in sparx5_vcap_init()
2068 /* Setup callbacks to allow the API to use the VCAP HW */ in sparx5_vcap_init()
2077 pr_err("%s:%d: vcap allocation failed: %d\n", in sparx5_vcap_init()