#
5da1f2d8 |
| 11-Apr-2018 |
Anatoly Burakov <anatoly.burakov@intel.com> |
net/bnxt: use contiguous allocation for DMA memory
All hardware drivers should allocate IOVA-contiguous memzones for their hardware resources.
Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.
net/bnxt: use contiguous allocation for DMA memory
All hardware drivers should allocate IOVA-contiguous memzones for their hardware resources.
Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com> Tested-by: Santosh Shukla <santosh.shukla@caviumnetworks.com> Tested-by: Hemant Agrawal <hemant.agrawal@nxp.com> Tested-by: Gowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com>
show more ...
|
#
3f8a7537 |
| 26-Mar-2018 |
Somnath Kotur <somnath.kotur@broadcom.com> |
net/bnxt: fix flow director with same cmd different queue
When user reissues same flow director cmd with a different queue update the existing filter to redirect flow to the new desired queue as des
net/bnxt: fix flow director with same cmd different queue
When user reissues same flow director cmd with a different queue update the existing filter to redirect flow to the new desired queue as destination just like the other filters like 5 tuple and generic flow.
Fixes: 2d64da097aa0 ("net/bnxt: support FDIR") Cc: stable@dpdk.org
Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com>
show more ...
|
#
a6411929 |
| 07-Feb-2018 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: fix return code in MAC address set
There is no need to return an error if an existing MAC is added.
Fixes: 778b759ba10e ("net/bnxt: add MAC address") Cc: stable@dpdk.org
Signed-off-by: A
net/bnxt: fix return code in MAC address set
There is no need to return an error if an existing MAC is added.
Fixes: 778b759ba10e ("net/bnxt: add MAC address") Cc: stable@dpdk.org
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
9b63c6fd |
| 26-Jan-2018 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: support Rx/Tx queue start/stop
Currently this is implemented entirely in the PMD as there is no explicit support in the HW. Re-program the RSS Table without this queue on stop and add it b
net/bnxt: support Rx/Tx queue start/stop
Currently this is implemented entirely in the PMD as there is no explicit support in the HW. Re-program the RSS Table without this queue on stop and add it back to the table on start.
Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com> Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
be160484 |
| 26-Jan-2018 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: check if MAC address is all zeros
In certain cases the MAC address of a port could be all zeros. Catch it early, log a message and fail the initialization.
Signed-off-by: Ajit Khaparde <a
net/bnxt: check if MAC address is all zeros
In certain cases the MAC address of a port could be all zeros. Catch it early, log a message and fail the initialization.
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
3e92fd4e |
| 26-Jan-2018 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: use dynamic log type
This patch implements driver specific log type doing away with usage of RTE_LOG() for logging.
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
|
#
ffc905f3 |
| 22-Jan-2018 |
Ferruh Yigit <ferruh.yigit@intel.com> |
ethdev: separate driver APIs
Create a rte_ethdev_driver.h file and move PMD specific APIs here. Drivers updated to include this new header file.
There is no update in header content and since ethde
ethdev: separate driver APIs
Create a rte_ethdev_driver.h file and move PMD specific APIs here. Drivers updated to include this new header file.
There is no update in header content and since ethdev.h included by ethdev_driver.h, nothing changed from driver point of view, only logically grouping of APIs. From applications point of view they can't access to driver specific APIs anymore and they shouldn't.
More PMD specific data structures still remain in ethdev.h because of inline functions in header use them. Those will be handled separately.
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com> Acked-by: Shreyansh Jain <shreyansh.jain@nxp.com> Acked-by: Andrew Rybchenko <arybchenko@solarflare.com> Acked-by: Thomas Monjalon <thomas@monjalon.net>
show more ...
|
#
e38e04cb |
| 03-Jan-2018 |
Olivier Matz <olivier.matz@6wind.com> |
net/bnxt: remove useless copy when setting MAC address
This operation is already done by the ethdev layer, it should not be done by the driver.
Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
|
#
f10d5282 |
| 08-Jan-2018 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: check on-chip resources
Check for availability of on-chip resources - like Queue count, number stat context, number of ring groups before inheriting and initializing as per application req
net/bnxt: check on-chip resources
Check for availability of on-chip resources - like Queue count, number stat context, number of ring groups before inheriting and initializing as per application requirements. Also check before creating a Tx or Rx queue make sure there are enough resources to complete the request.
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
ba09f838 |
| 08-Jan-2018 |
Somnath Kotur <somnath.kotur@broadcom.com> |
net/bnxt: fix duplicate pattern for 5tuple filter
When user re-issues same 5 tuple filter pattern cmd with different destination queue, it would flag it as an existing match. However, when deletion
net/bnxt: fix duplicate pattern for 5tuple filter
When user re-issues same 5 tuple filter pattern cmd with different destination queue, it would flag it as an existing match. However, when deletion on this filter was attempted, it would crash as the 'vnic' from which the filter was being removed from would be different. Fix by updating the filter in the scenario where there is a pattern match and only the destination queue varies.
Fixes: b7435d660a8c ("net/bnxt: add ntuple filtering support") Cc: stable@dpdk.org
Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com> Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
2b30803c |
| 08-Jan-2018 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: fix check for ether type
As per documentation, While supporting ethertype_filters matching ether_types 0x0800 (IPv4) and 0x86DD (IPv6) is invalid. But we were wrongly doing that. This patc
net/bnxt: fix check for ether type
As per documentation, While supporting ethertype_filters matching ether_types 0x0800 (IPv4) and 0x86DD (IPv6) is invalid. But we were wrongly doing that. This patch fixes it.
Fixes: 5ef3b79fdfe6 ("net/bnxt: support flow filter ops") Cc: stable@dpdk.org
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
ed2ced6f |
| 08-Jan-2018 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: check initialization before accessing stats
Maintain state of PMD initialization and check it before checking stats. In certain cases, we might end up accessing stats before the required H
net/bnxt: check initialization before accessing stats
Maintain state of PMD initialization and check it before checking stats. In certain cases, we might end up accessing stats before the required HWRM commands are processed by FW.
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
ff947c6c |
| 08-Jan-2018 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: add check for multi host PF per port
Certain SKUs of NIC can support features like NPAR, Multi Host PFs per port. We need to check for such features in order to restrict certain HWRM comm
net/bnxt: add check for multi host PF per port
Certain SKUs of NIC can support features like NPAR, Multi Host PFs per port. We need to check for such features in order to restrict certain HWRM commands from being sent to the FW.
For the single PF per port model, allow commands like hwrm_port_phy_cfg from the PF driver. In NPAR and MH environments with multiple PFs per port, we should not allow HWRM commands like hwrm_port_phy_cfg to be sent to the FW.
This patch takes care of that.
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
bdd55504 |
| 08-Jan-2018 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: return proper error code
If the FW fails bnxt_hwrm_func_reset() with an error status, instead of returning -1, return a more standard value of -EIO. Similarly sometimes the status returned
net/bnxt: return proper error code
If the FW fails bnxt_hwrm_func_reset() with an error status, instead of returning -1, return a more standard value of -EIO. Similarly sometimes the status returned by certain FW commands may not be generic. Return a more standard value of -EIO in that case as well.
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
ee5d7bdd |
| 08-Jan-2018 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: fix group info usage
Ring groups is a Rx only attribute. Make sure there are sufficient ring groups available. Return an error if they are not available.
Fixes: 37d6161a68ba ("net/bnxt: a
net/bnxt: fix group info usage
Ring groups is a Rx only attribute. Make sure there are sufficient ring groups available. Return an error if they are not available.
Fixes: 37d6161a68ba ("net/bnxt: add ring group alloc/free") Cc: stable@dpdk.org
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
729ff703 |
| 08-Jan-2018 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: check return values in init
We are not checking for return values of functions like bnxt_hwrm_queue_qportcfg and bnxt_hwrm_func_qcfg in bnxt_dev_init thereby preventing a cleanup in case o
net/bnxt: check return values in init
We are not checking for return values of functions like bnxt_hwrm_queue_qportcfg and bnxt_hwrm_func_qcfg in bnxt_dev_init thereby preventing a cleanup in case of a HWRM command failure. This patch fixes that.
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
b11cceb8 |
| 05-Dec-2017 |
Somnath Kotur <somnath.kotur@broadcom.com> |
net/bnxt: support timesync
Implemented the 'time_sync' related APIs for supporting the PTP protocol.
Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com> Acked-by: Ajit Khaparde <ajit.khaparde
net/bnxt: support timesync
Implemented the 'time_sync' related APIs for supporting the PTP protocol.
Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com> Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
9a82633c |
| 09-Nov-2017 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: fix link handling and configuration
Remove a case where we were sending a deprecated field to the FW. There is no need to send auto_link_speed to the FW. Also set the auto_mode correctly d
net/bnxt: fix link handling and configuration
Remove a case where we were sending a deprecated field to the FW. There is no need to send auto_link_speed to the FW. Also set the auto_mode correctly depending on the setting requested.
Fixes: 7bc8e9a227cc ("net/bnxt: support async link notification") Cc: stable@dpdk.org
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
1ccdd771 |
| 09-Nov-2017 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: fix duplicate creation of ntuple filter
Prevent the creation of duplicate 5tuple filters.
Fixes: b7435d660a8c ("net/bnxt: add ntuple filtering support")
Signed-off-by: Ajit Khaparde <aji
net/bnxt: fix duplicate creation of ntuple filter
Prevent the creation of duplicate 5tuple filters.
Fixes: b7435d660a8c ("net/bnxt: add ntuple filtering support")
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
9cea9e56 |
| 30-Oct-2017 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: fix HWRM command failures during VF unload
In some cases when a VF driver is unloaded after the PF driver, certain HWRM commands are returned with an error. Instead the PF can tell the FW
net/bnxt: fix HWRM command failures during VF unload
In some cases when a VF driver is unloaded after the PF driver, certain HWRM commands are returned with an error. Instead the PF can tell the FW to permit these commands in order to allow a clean unload.
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
5889248c |
| 27-Oct-2017 |
Ajit Khaparde <ajit.khaparde@broadcom.com> |
net/bnxt: fix flow director filter
Set the filter_type before we match a new filter against existing filters. Otherwise we are missing the existing filters.
Fixes: 2d64da097aa0 ("net/bnxt: support
net/bnxt: fix flow director filter
Set the filter_type before we match a new filter against existing filters. Otherwise we are missing the existing filters.
Fixes: 2d64da097aa0 ("net/bnxt: support FDIR")
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
show more ...
|
#
df6e0a06 |
| 20-Oct-2017 |
Santosh Shukla <santosh.shukla@caviumnetworks.com> |
drivers/net: rename physical address type to IOVA
Renamed data type from phys_addr_t to rte_iova_t.
Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com> Reviewed-by: Anatoly Burakov <a
drivers/net: rename physical address type to IOVA
Renamed data type from phys_addr_t to rte_iova_t.
Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com> Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
show more ...
|
#
f17ca787 |
| 04-Nov-2017 |
Thomas Monjalon <thomas@monjalon.net> |
memzone: rename address from physical to IOVA
The struct rte_memzone field .phys_addr is renamed to .iova. The deprecated name is kept in an anonymous union to avoid breaking the API.
Signed-off-by
memzone: rename address from physical to IOVA
The struct rte_memzone field .phys_addr is renamed to .iova. The deprecated name is kept in an anonymous union to avoid breaking the API.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
show more ...
|
#
62196f4e |
| 04-Nov-2017 |
Thomas Monjalon <thomas@monjalon.net> |
mem: rename address mapping function to IOVA
The function rte_mem_virt2phy() is kept and used in functions which works only with physical addresses. For all other calls this function is replaced by
mem: rename address mapping function to IOVA
The function rte_mem_virt2phy() is kept and used in functions which works only with physical addresses. For all other calls this function is replaced by rte_mem_virt2iova() which does a direct mapping (no conversion) in the VA case.
Note: the new function rte_mem_virt2iova() function matches the behaviour implemented in rte_mem_virt2phy() by the commit 680f6c12600f ("mem: honor IOVA mode in virt2phy")
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
show more ...
|
#
289ba0c0 |
| 01-Sep-2017 |
David Harton <dharton@cisco.com> |
ethdev: allow returning error on VLAN offload ops
Some devices may not support or fail setting VLAN offload configuration based on dynamic circumstances so the vlan_offload_set_t vector is modified
ethdev: allow returning error on VLAN offload ops
Some devices may not support or fail setting VLAN offload configuration based on dynamic circumstances so the vlan_offload_set_t vector is modified to return an int so the caller can determine success or not.
rte_eth_dev_set_vlan_offload is updated to return the value provided by the vector when called along with restoring the original offload configs on failure.
Existing vlan_offload_set_t vectors are modified to return an int. Majority of cases return 0 but a few that actually can fail now return their failure codes.
Finally, a vlan_offload_set_t vector is added to virtio to facilitate dynamically turning VLAN strip on or off.
Signed-off-by: David Harton <dharton@cisco.com> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
show more ...
|