#
0c036a14 |
| 07-Nov-2024 |
Peter Spreadborough <peter.spreadborough@broadcom.com> |
net/bnxt/tf_ulp: optimize with inline and prediction
This change makes performance improvements by inlining frequently used utility functions and by helping branch prediction by using the likely/unl
net/bnxt/tf_ulp: optimize with inline and prediction
This change makes performance improvements by inlining frequently used utility functions and by helping branch prediction by using the likely/unlikely compiler hints.
Signed-off-by: Peter Spreadborough <peter.spreadborough@broadcom.com> Signed-off-by: Sriharsha Basavapatna <sriharsha.basavapatna@broadcom.com> Reviewed-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
dd0191d5 |
| 07-Nov-2024 |
Shuanglin Wang <shuanglin.wang@broadcom.com> |
net/bnxt/tf_ulp: support Thor2 ULP layer
This patch includes the support for following features that enable Thor2 support in the ULP layer:
1. Added support for ulp initialization on Thor2 platform
net/bnxt/tf_ulp: support Thor2 ULP layer
This patch includes the support for following features that enable Thor2 support in the ULP layer:
1. Added support for ulp initialization on Thor2 platform. This involved breaking the functionality that is common and not common between Thor and Thor2 platforms. 2. MPC support for Thor2. This feature enables the access of the DRAM memory location in the HOST CPU for Exact match flows and Action records for those flows. 3. Added support for VF's on Thor2 platform. 4. Added support to offload traffic between two VF's on the system. 5. Renamed all BNXT_TF_DBG macros to BNXT_DRV_DBG. 6. Added logic to get error conditions in the flow create path. 7. Added support for Geneve header and set TTL action parsing. 8. Add mpc batching to ulp flow create for Thor2.
This patch also updates the template files for the changes that are being added in this patch.
Signed-off-by: Shuanglin Wang <shuanglin.wang@broadcom.com> Signed-off-by: Mike Baucom <michael.baucom@broadcom.com> Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Signed-off-by: Manish Kurup <manish.kurup@broadcom.com> Signed-off-by: Sriharsha Basavapatna <sriharsha.basavapatna@broadcom.com> Reviewed-by: Shahaji Bhosle <sbhosle@broadcom.com> Reviewed-by: Randy Schacher <stuart.schacher@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
e6e8f03e |
| 21-Apr-2023 |
Randy Schacher <stuart.schacher@broadcom.com> |
net/bnxt: update copyright date and cleanup whitespace
Update the Copyright to 2023 Clean up extra blank lines Clean up other whitespace issues
Signed-off-by: Randy Schacher <stuart.schacher@broadc
net/bnxt: update copyright date and cleanup whitespace
Update the Copyright to 2023 Clean up extra blank lines Clean up other whitespace issues
Signed-off-by: Randy Schacher <stuart.schacher@broadcom.com> Reviewed-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
6639a8b6 |
| 03-Nov-2021 |
Kishore Padmanabha <kishore.padmanabha@broadcom.com> |
net/bnxt: update log messages in TruFlow path
Some of the error level log messages are made debug level messages. When Truflow is not enabled then Truflow init error messages are moved to debug leve
net/bnxt: update log messages in TruFlow path
Some of the error level log messages are made debug level messages. When Truflow is not enabled then Truflow init error messages are moved to debug level instead.
Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Signed-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> Reviewed-by: Shahaji Bhosle <sbhosle@broadcom.com> Reviewed-by: Mike Baucom <michael.baucom@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
3fe124d2 |
| 30-May-2021 |
Kishore Padmanabha <kishore.padmanabha@broadcom.com> |
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 <kishore.padmanabha@broadcom.com> Signed-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> Reviewed-by: Mike Baucom <michael.baucom@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
2addc463 |
| 27-Jan-2021 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: update copyright year
Update copyright year in various files.
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com> Reviewed-by: Somnath Kotur <somnath.kotur@broadcom.com> Reviewed-by
net/bnxt: update copyright year
Update copyright year in various files.
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com> Reviewed-by: Somnath Kotur <somnath.kotur@broadcom.com> Reviewed-by: Kalesh AP <kalesh-anakkur.purayil@broadcom.com>
show more ...
|
#
69975a54 |
| 11-Sep-2020 |
Kishore Padmanabha <kishore.padmanabha@broadcom.com> |
net/bnxt: reduce debug log messages
Removed the mark id log message since it is in the data path. Also optimized the link status debug message.
Signed-off-by: Kishore Padmanabha <kishore.padmanabha
net/bnxt: reduce debug log messages
Removed the mark id log message since it is in the data path. Also optimized the link status debug message.
Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Reviewed-by: Mike Baucom <michael.baucom@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
29261167 |
| 17-Jul-2020 |
Kishore Padmanabha <kishore.padmanabha@broadcom.com> |
net/bnxt: fix null pointer dereference
Avoid dereferencing a null pointer.
Fixes: 313ac35ac701 ("net/bnxt: support ULP session manager init") Cc: stable@dpdk.org
Signed-off-by: Kishore Padmanabha
net/bnxt: fix null pointer dereference
Avoid dereferencing a null pointer.
Fixes: 313ac35ac701 ("net/bnxt: support ULP session manager init") Cc: stable@dpdk.org
Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com> Reviewed-by: Mike Baucom <michael.baucom@broadcom.com>
show more ...
|
#
bac18ea2 |
| 02-Jul-2020 |
Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> |
net/bnxt: manage VF to VFR conduit
When VF-VFR conduits are created, a mark is added to the mark database. mark_flag indicates whether the mark is valid and has VFR information (VFR_ID bit in mark_f
net/bnxt: manage VF to VFR conduit
When VF-VFR conduits are created, a mark is added to the mark database. mark_flag indicates whether the mark is valid and has VFR information (VFR_ID bit in mark_flag). Rx path was checking for this VFR_ID bit. However, while adding the mark to the mark database, VFR_ID bit is not set in mark_flag.
Signed-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> Reviewed-by: Somnath Kotur <somnath.kotur@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
bbc5f1a0 |
| 02-Jul-2020 |
Kishore Padmanabha <kishore.padmanabha@broadcom.com> |
net/bnxt: support internal exact match entries
Added support for the internal exact match entries.
Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Signed-off-by: Venkat Duvvuru
net/bnxt: support internal exact match entries
Added support for the internal exact match entries.
Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Signed-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> Reviewed-by: Somnath Kotur <somnath.kotur@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
55aeaac3 |
| 02-Jul-2020 |
Kishore Padmanabha <kishore.padmanabha@broadcom.com> |
net/bnxt: support IF table processing
Added support for if table processing in the ulp mapper layer. This enables support for the default partition action record pointer interface table.
Signed-off
net/bnxt: support IF table processing
Added support for if table processing in the ulp mapper layer. This enables support for the default partition action record pointer interface table.
Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Signed-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> Reviewed-by: Somnath Kotur <somnath.kotur@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
cd01ecff |
| 12-Jun-2020 |
Kishore Padmanabha <kishore.padmanabha@broadcom.com> |
net/bnxt: rename fields in device params structure
The fields in the device params structure are renamed to reflect the usage of those fields.
Signed-off-by: Kishore Padmanabha <kishore.padmanabha@
net/bnxt: rename fields in device params structure
The fields in the device params structure are renamed to reflect the usage of those fields.
Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com> Reviewed-by: Mike Baucom <michael.baucom@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
7e3a1670 |
| 12-Jun-2020 |
Kishore Padmanabha <kishore.padmanabha@broadcom.com> |
net/bnxt: add vfr flag to mark manager
Add support for the vfr flag to the mark manager. The vf representor flag is added to class table so it can be set in the template details. Also added the vfr
net/bnxt: add vfr flag to mark manager
Add support for the vfr flag to the mark manager. The vf representor flag is added to class table so it can be set in the template details. Also added the vfr flag process in mark database.
Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com> Reviewed-by: Mike Baucom <michael.baucom@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
8ce17d56 |
| 12-Jun-2020 |
Kishore Padmanabha <kishore.padmanabha@broadcom.com> |
net/bnxt: divide ULP template database to smaller modules
The ulp template db file is broken into three parts namely the table, class and action files.
Signed-off-by: Kishore Padmanabha <kishore.pa
net/bnxt: divide ULP template database to smaller modules
The ulp template db file is broken into three parts namely the table, class and action files.
Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com> Reviewed-by: Mike Baucom <michael.baucom@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
8a32d5c4 |
| 04-May-2020 |
Kishore Padmanabha <kishore.padmanabha@broadcom.com> |
net/bnxt: modify mark manager validity checks
The ULP mark manager originally assumed that zero was an invalid mark and used it for invalidation and deletion. The mark manager now supports adding z
net/bnxt: modify mark manager validity checks
The ULP mark manager originally assumed that zero was an invalid mark and used it for invalidation and deletion. The mark manager now supports adding zero as a mark, flags for validity and type, and adds explicit bounds checking instead of relying on mask.
Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Reviewed-by: Mike Baucom <michael.baucom@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
b87abb2e |
| 15-Apr-2020 |
Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> |
net/bnxt: support marking packet
When a flow is offloaded with MARK action (RTE_FLOW_ACTION_TYPE_MARK), each packet of that flow will have metadata set in its completion. This metadata will be used
net/bnxt: support marking packet
When a flow is offloaded with MARK action (RTE_FLOW_ACTION_TYPE_MARK), each packet of that flow will have metadata set in its completion. This metadata will be used to fetch an index into a mark table where the actual MARK for that flow is stored. Fetch the MARK from the mark table and inject it into packet’s mbuf.
Signed-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> Signed-off-by: Mike Baucom <michael.baucom@broadcom.com> Reviewed-by: Lance Richardson <lance.richardson@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
05a11d7d |
| 15-Apr-2020 |
Mike Baucom <michael.baucom@broadcom.com> |
net/bnxt: support freeing key and action tables
This patch does the following 1. Gets all the flow resources from the flow id 2. Frees all the table resources 3. Frees the flow in the flow table
Si
net/bnxt: support freeing key and action tables
This patch does the following 1. Gets all the flow resources from the flow id 2. Frees all the table resources 3. Frees the flow in the flow table
Signed-off-by: Mike Baucom <michael.baucom@broadcom.com> Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Signed-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> Reviewed-by: Lance Richardson <lance.richardson@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
ae905028 |
| 15-Apr-2020 |
Mike Baucom <michael.baucom@broadcom.com> |
net/bnxt: support process key tables
This patch creates the classifier table entries for a flow.
Signed-off-by: Mike Baucom <michael.baucom@broadcom.com> Signed-off-by: Kishore Padmanabha <kishore.
net/bnxt: support process key tables
This patch creates the classifier table entries for a flow.
Signed-off-by: Mike Baucom <michael.baucom@broadcom.com> Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com> Signed-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> Reviewed-by: Lance Richardson <lance.richardson@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
70e64b27 |
| 15-Apr-2020 |
Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> |
net/bnxt: support ULP session manager cleanup
A ULP session will contain all the resources needed to support rte flow offloads. A session is initialized as part of rte_eth_device start. A DPDK appli
net/bnxt: support ULP session manager cleanup
A ULP session will contain all the resources needed to support rte flow offloads. A session is initialized as part of rte_eth_device start. A DPDK application can have multiple interfaces which means rte_eth_device start will be called for each of these devices. ULP session manager will make sure that a single ULP session is only initialized once. Apart from this, it also initializes MARK database, EEM table & flow database. ULP session manager also manages a list of all opened ULP sessions.
This patch adds support for cleaning up resources initialized for ULP sessions.
Signed-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> Signed-off-by: Mike Baucom <michael.baucom@broadcom.com> Reviewed-by: Lance Richardson <lance.richardson@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
313ac35a |
| 15-Apr-2020 |
Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> |
net/bnxt: support ULP session manager init
A ULP session will contain all the resources needed to support rte flow offloads. A session is initialized as part of rte_eth_device start. A DPDK applicat
net/bnxt: support ULP session manager init
A ULP session will contain all the resources needed to support rte flow offloads. A session is initialized as part of rte_eth_device start. A DPDK application can have multiple interfaces which means rte_eth_device start will be called for each of these devices. ULP session manager will make sure that a single ULP session is only initialized once. Apart from this, it also initializes MARK database, EEM table & flow database. ULP session manager also manages a list of all opened ULP sessions.
Signed-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com> Signed-off-by: Mike Baucom <michael.baucom@broadcom.com> Reviewed-by: Lance Richardson <lance.richardson@broadcom.com> Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|