History log of /dpdk/drivers/net/bnxt/tf_ulp/ulp_mapper.h (Results 1 – 25 of 39)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v22.03, v22.03-rc4, v22.03-rc3, v22.03-rc2, v22.03-rc1, v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2, v21.11-rc1
# f63aa27d 20-Sep-2021 Kishore Padmanabha <[email protected]>

net/bnxt: support dynamic encap action

The encapsulation record processing is enhanced to handle data
dynamically. Different combinations of VXLAN encapsulation using
no VLAN or single or double VLA

net/bnxt: support dynamic encap action

The encapsulation record processing is enhanced to handle data
dynamically. Different combinations of VXLAN encapsulation using
no VLAN or single or double VLAN can be supported and also supports
both IPv4 and IPv6 versions.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Randy Schacher <[email protected]>
Acked-by: Ajit Khaparde <[email protected]>

show more ...


# bdf4a3c6 20-Sep-2021 Kishore Padmanabha <[email protected]>

net/bnxt: support tunnel offload

Add support for tunnel offload APIs. Specifically the following
are supported.
tunnel_decap_set, tunnel_match, tunnel_action_decap_release,
tunnel_item_release.

Thi

net/bnxt: support tunnel offload

Add support for tunnel offload APIs. Specifically the following
are supported.
tunnel_decap_set, tunnel_match, tunnel_action_decap_release,
tunnel_item_release.

This provides support for VXLAN decap action where two flows
can indicate tunnel offload rule. The first flow indicates the
tunnel properties and second flow indicates the inner packet
structure. The templates are updated to support this
feature.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Shahaji Bhosle <[email protected]>
Acked-by: Ajit Khaparde <[email protected]>

show more ...


Revision tags: v21.08, v21.08-rc4, v21.08-rc3, v21.08-rc2, v21.08-rc1
# 1993b267 30-May-2021 Shahaji Bhosle <[email protected]>

net/bnxt: cleanup ULP parser and mapper

1. Disable accum_stats for Thor
2. Delete the generic port table for default flow
3. The packet mask to calculate the number of packets must be 28 bits.
4. In

net/bnxt: cleanup ULP parser and mapper

1. Disable accum_stats for Thor
2. Delete the generic port table for default flow
3. The packet mask to calculate the number of packets must be 28 bits.
4. Increase the WC TCAM entries to 512 per application and add 2
shared L2 context TCAM entries to match identifiers for flow
scaling
5. Ignore multiple critical resources in ULP flow database
6. Renamed conditional code update to function opcode.
7. Updated TRUFLOW debug logs to support the above changes.
8. As part of the HA cleanup, the shared session name now allows the user
to designate that the session uses the wc_tcam regions within the
shared session.
9. The CFA action pointer does not exist if there is no support for
VF representor, so no need to display the message for use case where
there is no support for VF representors.
10. Cleanup flow counter software accumulation.
11. When an application exits ungracefully, the HA code now
clears the appropriate shared WC region and sets the HA state.
12. Removal of unnecessary INFO message. The message is an indicator that
the ports are being removed from DPDK, but all cleanup has not
completed. Once the cleanup is completed, the timer will be stopped.

Signed-off-by: Shahaji Bhosle <[email protected]>
Signed-off-by: Mike Baucom <[email protected]>
Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Randy Schacher <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 19994cc7 30-May-2021 Kishore Padmanabha <[email protected]>

net/bnxt: add templates for shared sessions

1. Add template support for shared sessions.
2. Store the shared session flag in flow data base.
3. Store WC TCAM region in the computational field.

Sign

net/bnxt: add templates for shared sessions

1. Add template support for shared sessions.
2. Store the shared session flag in flow data base.
3. Store WC TCAM region in the computational field.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Mike Baucom <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 5b73c859 30-May-2021 Kishore Padmanabha <[email protected]>

net/bnxt: support application ID in ULP matcher

The application id in the ULP matcher makes the template matching
restrict to only flows that are supported for that application.

Signed-off-by: Kish

net/bnxt: support application ID in ULP matcher

The application id in the ULP matcher makes the template matching
restrict to only flows that are supported for that application.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Shahaji Bhosle <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# c6062ec0 30-May-2021 Mike Baucom <[email protected]>

net/bnxt: add shared session support to ULP

Shared session permits cooperative sharing of prescribed resources
between applications.

- devargs added for app-id in order to enable sharing session

net/bnxt: add shared session support to ULP

Shared session permits cooperative sharing of prescribed resources
between applications.

- devargs added for app-id in order to enable sharing session
resources across applications
- shared session management added
- TRUFLOW resource reservations are now app ID and device dependent

Signed-off-by: Mike Baucom <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Kishore Padmanabha <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 741172be 30-May-2021 Kishore Padmanabha <[email protected]>

net/bnxt: refactor flow parser in ULP

1. Remove Ether type, VLAN type and IP proto type from pattern matching,
since the header bits can be used for matching. This reduces the class
template signatu

net/bnxt: refactor flow parser in ULP

1. Remove Ether type, VLAN type and IP proto type from pattern matching,
since the header bits can be used for matching. This reduces the class
template signatures by a factor of 8.

2. Remove the wild card bit in the pattern matching since same template
can be used for both exact and wild card entries.

3. The action record pointers have to use higher range to not collide
with the firmware action record pointers. Hence reduced the number of
action record pointers for Whitney platform.

4. The conditional update opcode provide functionality to reject flows
for instance reject flows that do not adhere to flow signature match.

5. Added check to not populate protocol specifications if the
protocol mask is null or zero.

6. Check that field array is not overrun.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Mike Baucom <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 3fe124d2 30-May-2021 Kishore Padmanabha <[email protected]>

net/bnxt: support Thor platform

1. Add templates to support Thor platform.
2. Flow counter manager is not enabled if no flow counters are
configured.
3. Mark database is not enabled if mark actio

net/bnxt: support Thor platform

1. Add templates to support Thor platform.
2. Flow counter manager is not enabled if no flow counters are
configured.
3. Mark database is not enabled if mark action is not supported.
4. Removed application to port default flow.
5. Add allocate and write for the global registry file.
6. Multiple default flow templates are combined to one.
7. Remove default loopback action record, this is required in order to
support multiple platforms.
8. Enable port table support in the generic table.
9. remove global template table in order to support multiple platforms.
10. Add support to get parent VNIC from port table database.
11. VF representor action mark is made optional since not all
configurations need representor support.
12. Add layer 4 ports to computational fields.
13. Update templates to support the above changes.
14. Add support for wildcard.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Mike Baucom <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 255add67 30-May-2021 Kishore Padmanabha <[email protected]>

net/bnxt: refactor TRUFLOW processing

1. The flow database opcode is updated to split the alloc push resource
item so it can be controlled using the control table.

2. The class and action match sig

net/bnxt: refactor TRUFLOW processing

1. The flow database opcode is updated to split the alloc push resource
item so it can be controlled using the control table.

2. The class and action match signatures are populated with pattern ids
that are matched against template pattern id to reject any unsupported
class and action combinations.

3. The flow DB opcode should be no op when accessing the
global registry identifiers.

4. The resource function for branch is changed to control so that it
is extended to perform flow database operations and not just branch
operations.

5. The conditional goto processing now supports negative numbers to
support looping of the mapper tables to support flow ranges and
also enable conditional fail goto to support failure path mapper
tables.

6. The field mapper opcode is updated to add all ones to fields
that support exact match.

7. Added key info and identifier list to whitney action templates
The whitney plus templates are updated to use the mapper infrastructure
changes.

8. The partition interface table configuration of the default
egress rule for the representor interface needs to use the
reserved parif interface that is specific to each
platform. The pipeline for the representor interface is broken
since incorrect parif configuration cause the miss path packets to
be dropped.

9. In the mapper table processing, if a failure condition is hit
due to invalid memory type then use the conditional goto failure
configuration instead of jumping to next table. This causes ipv6
exact match entry to be skipped. This patch fixes that issue.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Shahaji Bhosle <[email protected]>
Reviewed-by: Randy Schacher <[email protected]>
Reviewed-by: Mike Baucom <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 642e5ab3 30-May-2021 Kishore Padmanabha <[email protected]>

net/bnxt: set shared handle for generic table

The shared handle is set in the mapper params when generic resource
are created, this shall be used by application as a handle to the
shared resource li

net/bnxt: set shared handle for generic table

The shared handle is set in the mapper params when generic resource
are created, this shall be used by application as a handle to the
shared resource like mirror handle.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Mike Baucom <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 9cbfa4cf 30-May-2021 Kishore Padmanabha <[email protected]>

net/bnxt: add ULP priority opcode processing

Added ULP priority opcode to enable flexibility to
the usage of the flow priority. New opcodes help template
specify the flow priority accordingly.

Sign

net/bnxt: add ULP priority opcode processing

Added ULP priority opcode to enable flexibility to
the usage of the flow priority. New opcodes help template
specify the flow priority accordingly.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Douglas Flint <[email protected]>
Reviewed-by: Mike Baucom <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 5952b1cc 30-May-2021 Kishore Padmanabha <[email protected]>

net/bnxt: modify TCAM opcode processing

Added TCAM table specific opcode to process TCAM entry creation
and reuse. This change removes the TCAM cache mechanism and uses
the generic table mechanism f

net/bnxt: modify TCAM opcode processing

Added TCAM table specific opcode to process TCAM entry creation
and reuse. This change removes the TCAM cache mechanism and uses
the generic table mechanism for reuse of TCAM entries.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Mike Baucom <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# c5d06df4 30-May-2021 Mike Baucom <[email protected]>

net/bnxt: add conditional processing of templates

Conditional execution and rejection processing added for templates and
tables. This allows the mapper to skip tables and reject templates
based on

net/bnxt: add conditional processing of templates

Conditional execution and rejection processing added for templates and
tables. This allows the mapper to skip tables and reject templates
based on the content without having to hard code rules.

Signed-off-by: Mike Baucom <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Kishore Padmanabha <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# f634204b 30-May-2021 Kishore Padmanabha <[email protected]>

net/bnxt: support generic table processing

Added support for generic table processing, this feature shall
enable support for shared resource like mirror and TCAM
cache tables.

Signed-off-by: Kishor

net/bnxt: support generic table processing

Added support for generic table processing, this feature shall
enable support for shared resource like mirror and TCAM
cache tables.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Mike Baucom <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


Revision tags: v21.05, v21.05-rc4, v21.05-rc3, v21.05-rc2, v21.05-rc1, v21.02, v21.02-rc4, v21.02-rc3, v21.02-rc2
# 2addc463 27-Jan-2021 Ajit Khaparde <[email protected]>

net/bnxt: update copyright year

Update copyright year in various files.

Signed-off-by: Ajit Khaparde <[email protected]>
Reviewed-by: Somnath Kotur <[email protected]>
Reviewed-by

net/bnxt: update copyright year

Update copyright year in various files.

Signed-off-by: Ajit Khaparde <[email protected]>
Reviewed-by: Somnath Kotur <[email protected]>
Reviewed-by: Kalesh AP <[email protected]>

show more ...


Revision tags: v21.02-rc1, v20.11, v20.11-rc5, v20.11-rc4, v20.11-rc3, v20.11-rc2
# 675e31d8 26-Oct-2020 Venkat Duvvuru <[email protected]>

net/bnxt: support VXLAN decap offload

VXLAN decap offload can happen in stages. The offload request may
not come as a single flow request rather may come as two flow offload
requests F1 & F2. This p

net/bnxt: support VXLAN decap offload

VXLAN decap offload can happen in stages. The offload request may
not come as a single flow request rather may come as two flow offload
requests F1 & F2. This patch is adding support for this two stage
offload design. The match criteria for F1 is O_DMAC, O_SMAC,
O_DST_IP, O_UDP_DPORT and actions are COUNT, MARK, JUMP. The match
criteria for F2 is O_SRC_IP, O_DST_IP, VNI and inner header fields.
F1 and F2 flow offload requests can come in any order. If F2 flow
offload request comes first then F2 can’t be offloaded as there is
no O_DMAC information in F2. In this case, F2 will be deferred until
F1 flow offload request arrives. When F1 flow offload request is
received it will have O_DMAC information. Using F1’s O_DMAC, driver
creates an L2 context entry in the hardware as part of offloading F1.
F2 will now use F1’s O_DMAC to get the L2 context id associated with
this O_DMAC and other flow fields that are cached already at the time
of deferring F2 for offloading. F2s that arrive after F1 is offloaded
will be directly programmed and not cached.

Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Kishore Padmanabha <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 188bf91d 26-Oct-2020 Venkat Duvvuru <[email protected]>

net/bnxt: refactor flow id allocation

Currently, the flow id is allocated inside ulp_mapper_flow_create.
However with vxlan decap feature if F2 flow comes before F1 flow
then F2 is cached and not re

net/bnxt: refactor flow id allocation

Currently, the flow id is allocated inside ulp_mapper_flow_create.
However with vxlan decap feature if F2 flow comes before F1 flow
then F2 is cached and not really installed in the hardware which
means the code will return without calling ulp_mapper_flow_create.
But, ULP has to still return valid flow id to the stack.
Hence, move the flow id allocation outside ulp_mapper_flow_create.

Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Somnath Kotur <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


Revision tags: v20.11-rc1
# be8acb27 09-Oct-2020 Kishore Padmanabha <[email protected]>

net/bnxt: add parent child flow create and free

Added support in the ULP mapper to enable parent child flow
creation and destroy. This feature enables support for the vxlan
decap functionality.

Sig

net/bnxt: add parent child flow create and free

Added support in the ULP mapper to enable parent child flow
creation and destroy. This feature enables support for the vxlan
decap functionality.

Signed-off-by: Kishore Padmanabha <[email protected]>
Reviewed-by: Mike Baucom <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 30683082 09-Oct-2020 Kishore Padmanabha <[email protected]>

net/bnxt: combine default and regular flows

The default and regular flows are stored in the same flow table
instead of different flow tables. This should help code reuse
and reducing the number of a

net/bnxt: combine default and regular flows

The default and regular flows are stored in the same flow table
instead of different flow tables. This should help code reuse
and reducing the number of allocations.
So combine default and regular flows in flow database.

Signed-off-by: Kishore Padmanabha <[email protected]>
Reviewed-by: Mike Baucom <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 0c9fe336 09-Oct-2020 Mike Baucom <[email protected]>

net/bnxt: consolidate template table processing

The table processing has been consolidated to be able to reuse the same
code for action and classification template processing.

Signed-off-by: Mike B

net/bnxt: consolidate template table processing

The table processing has been consolidated to be able to reuse the same
code for action and classification template processing.

Signed-off-by: Mike Baucom <[email protected]>
Reviewed-by: Kishore Padmanabha <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


Revision tags: v20.08, v20.08-rc4, v20.08-rc3, v20.08-rc2, v20.08-rc1
# 77b359ee 06-Jul-2020 Kishore Padmanabha <[email protected]>

net/bnxt: change port config for full offload

Added port configuration changes to support full offload
rules when VF representor ports are used. The direction of
the flow is determined using the con

net/bnxt: change port config for full offload

Added port configuration changes to support full offload
rules when VF representor ports are used. The direction of
the flow is determined using the configured direction and the
configured match and action ports of the flow create.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Somnath Kotur <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Mike Baucom <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 5b648b90 02-Jul-2020 Kishore Padmanabha <[email protected]>

net/bnxt: add port representor and stat templates

The support for VF representor and counters is added to the
ulp templates.

Signed-off-by: Kishore Padmanabha <[email protected]>
Sign

net/bnxt: add port representor and stat templates

The support for VF representor and counters is added to the
ulp templates.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Somnath Kotur <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# d0eaabd4 02-Jul-2020 Venkat Duvvuru <[email protected]>

net/bnxt: fill mapper parameters with default rules

Default rules are needed for the packets to be punted between the
following entities in the non-offloaded path
1. Device PORT to DPDK App
2. DPDK

net/bnxt: fill mapper parameters with default rules

Default rules are needed for the packets to be punted between the
following entities in the non-offloaded path
1. Device PORT to DPDK App
2. DPDK App to Device PORT
3. VF Representor to VF
4. VF to VF Representor

This patch fills all the relevant information in the computed fields
& the act_prop fields for the flow mapper to create the necessary
tables in the hardware to enable the default rules.

Signed-off-by: Venkat Duvvuru <[email protected]>
Signed-off-by: Somnath Kotur <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# 4c4e86fa 02-Jul-2020 Kishore Padmanabha <[email protected]>

net/bnxt: support conditional execution of mapper tables

Added support for conditional execution of the mapper tables so that
actions like count will have table processed only if action count
is con

net/bnxt: support conditional execution of mapper tables

Added support for conditional execution of the mapper tables so that
actions like count will have table processed only if action count
is configured.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Venkat Duvvuru <[email protected]>
Reviewed-by: Somnath Kotur <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


# c3314c14 12-Jun-2020 Kishore Padmanabha <[email protected]>

net/bnxt: support mark action for LFID rules

The ulp mapper changes to support mark actions for non
GFID entries that support only LFID rules.

Signed-off-by: Kishore Padmanabha <kishore.padmanabha@

net/bnxt: support mark action for LFID rules

The ulp mapper changes to support mark actions for non
GFID entries that support only LFID rules.

Signed-off-by: Kishore Padmanabha <[email protected]>
Signed-off-by: Somnath Kotur <[email protected]>
Reviewed-by: Mike Baucom <[email protected]>
Reviewed-by: Ajit Khaparde <[email protected]>

show more ...


12