History log of /dpdk/drivers/net/bnxt/bnxt_ethdev.c (Results 1 – 25 of 512)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# b758e000 27-Apr-2022 Somnath Kotur <[email protected]>

net/bnxt: skip wait for link up on port start

Invoking bnxt_link_update_op() with wait_for_completion set would
result in the driver waiting for 10s in case the port link is down to
complete port in

net/bnxt: skip wait for link up on port start

Invoking bnxt_link_update_op() with wait_for_completion set would
result in the driver waiting for 10s in case the port link is down to
complete port initialization (dev_start_op()).
Change it by not waiting for the completion when invoking it in
dev_start_op()

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

show more ...


# 5591bb92 27-Apr-2022 Kalesh AP <[email protected]>

net/bnxt: recheck FW readiness if in reset process

If Firmware is still in reset process and returns the error
HWRM_ERR_CODE_HOT_RESET_PROGRESS, retry VER_GET command.
We have to do it in bnxt_handl

net/bnxt: recheck FW readiness if in reset process

If Firmware is still in reset process and returns the error
HWRM_ERR_CODE_HOT_RESET_PROGRESS, retry VER_GET command.
We have to do it in bnxt_handle_if_change_status().

Fixes: 0b533591238f ("net/bnxt: inform firmware about IF state changes")
Cc: [email protected]

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

show more ...


# 7b6eba88 27-Apr-2022 Kalesh AP <[email protected]>

net/bnxt: fix link status when port is stopped

Driver forces link down during port stop. But device is not obliged
link down in certain scenarios, even when forced. In that case,
subsequent link que

net/bnxt: fix link status when port is stopped

Driver forces link down during port stop. But device is not obliged
link down in certain scenarios, even when forced. In that case,
subsequent link queries returns link as up.
Fixed to return link status as down when port is stopped.
Driver is already doing that for VF/NPAR/MH functions.

Fixes: c09f57b49c13 ("net/bnxt: add start/stop/link update operations")
Cc: [email protected]

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

show more ...


# 9c1410be 27-Apr-2022 Kalesh AP <[email protected]>

net/bnxt: force PHY update on certain configurations

Device is not obliged link down in certain scenarios, even
when forced. When FW does not allow any user other than the BMC
to shutdown the port,

net/bnxt: force PHY update on certain configurations

Device is not obliged link down in certain scenarios, even
when forced. When FW does not allow any user other than the BMC
to shutdown the port, bnxt_get_hwrm_link_config() call always
returns link up. Force phy update always in that case,
else user configuration for speed/autoneg would not get applied
correctly.

Fixes: 7bc8e9a227cc ("net/bnxt: support async link notification")
Cc: [email protected]

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

show more ...


# c29aa80f 27-Apr-2022 Kalesh AP <[email protected]>

net/bnxt: remove unused macro

BNXT_FLAG_UPDATE_HASH is redundant now, remove it.

Fixes: 1ebb765090a6 ("net/bnxt: fix config RSS update")
Cc: [email protected]

Signed-off-by: Kalesh AP <kalesh-anakku

net/bnxt: remove unused macro

BNXT_FLAG_UPDATE_HASH is redundant now, remove it.

Fixes: 1ebb765090a6 ("net/bnxt: fix config RSS update")
Cc: [email protected]

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

show more ...


# 47a956a8 27-Apr-2022 Kalesh AP <[email protected]>

net/bnxt: fix device capability reporting

1. Added two functions bnxt_get_tx_port_offloads() and
bnxt_get_rx_port_offloads() to report the device
tx/rx offload capabilities to the application.

net/bnxt: fix device capability reporting

1. Added two functions bnxt_get_tx_port_offloads() and
bnxt_get_rx_port_offloads() to report the device
tx/rx offload capabilities to the application.
2. This avoids few duplicate code in the driver and make
VF-rep capability the same as VF.
3. This will help in selectively reporting offload capabilities
based on FW support.

Fixes: 0a6d2a720078 ("net/bnxt: get device infos")
Cc: [email protected]

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

show more ...


Revision tags: v22.03, v22.03-rc4, v22.03-rc3, v22.03-rc2, v22.03-rc1
# 06c047b6 09-Feb-2022 Stephen Hemminger <[email protected]>

remove unnecessary null checks

Functions like free, rte_free, and rte_mempool_free
already handle NULL pointer so the checks here are not necessary.

Remove redundant NULL pointer checks before free

remove unnecessary null checks

Functions like free, rte_free, and rte_mempool_free
already handle NULL pointer so the checks here are not necessary.

Remove redundant NULL pointer checks before free functions
found by nullfree.cocci

Signed-off-by: Stephen Hemminger <[email protected]>

show more ...


# 4d47569c 12-Jan-2022 Geoffrey Le Gourriérec <[email protected]>

net/bnxt: restore dependency on kernel modules

During a large refactoring sweep for 21.11, a previous commit
removed the dependency the bnxt driver had on Linux virtual
bus drivers, such as vfio-pci

net/bnxt: restore dependency on kernel modules

During a large refactoring sweep for 21.11, a previous commit
removed the dependency the bnxt driver had on Linux virtual
bus drivers, such as vfio-pci. This breaks port detection.

This patch adds the kmod dependency back as it was.

Fixes: 295968d17407 ("ethdev: add namespace")
Cc: [email protected]

Signed-off-by: Geoffrey Le Gourriérec <[email protected]>
Acked-by: Ajit Khaparde <[email protected]>

show more ...


# 6c63f349 04-Jan-2022 Kalesh AP <[email protected]>

net/bnxt: fix handling of VF configuration change

When there is a change in the default VLAN of the VF,
FW sends the VF_CFG_CHANGE async event to the driver.
Upon receiving this async event, driver

net/bnxt: fix handling of VF configuration change

When there is a change in the default VLAN of the VF,
FW sends the VF_CFG_CHANGE async event to the driver.
Upon receiving this async event, driver currently only queries
the FW using HWRM_FUNC_QCFG. But this is not enough.

Driver has to clean up the existing filter and recreate filters
so the FW can apply the default VLAN to the filter.

Fixes: 12213821a8a3 ("net/bnxt: register for more async events")
Cc: [email protected]

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

show more ...


# e21aca08 04-Jan-2022 Somnath Kotur <[email protected]>

net/bnxt: refactor datapath stop for reuse

Refactor bnxt_stop_rxtx() for reuse.
By accepting rte_eth_dev as input, bnxt_stop_rxtx() can be used
in multiple scenarios such as representor devices.

Si

net/bnxt: refactor datapath stop for reuse

Refactor bnxt_stop_rxtx() for reuse.
By accepting rte_eth_dev as input, bnxt_stop_rxtx() can be used
in multiple scenarios such as representor devices.

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

show more ...


# 59119d49 04-Jan-2022 Kalesh AP <[email protected]>

net/bnxt: fix flow create when RSS is disabled

This patch reverts the commit "5d47d06b2c83".
Revert this commit as it caused a regression on legacy chips.
On newer chips we use TruFlow based flow cr

net/bnxt: fix flow create when RSS is disabled

This patch reverts the commit "5d47d06b2c83".
Revert this commit as it caused a regression on legacy chips.
On newer chips we use TruFlow based flow creation instead of
HWRM based flow creation.

Fixes: 5d47d06b2c83 ("net/bnxt: modify VNIC accounting")
Cc: [email protected]

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

show more ...


# caf6c007 04-Jan-2022 Kalesh AP <[email protected]>

net/bnxt: improve recovery related log messages

Make these messages more specific.

Signed-off-by: Kalesh AP <[email protected]>
Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.

net/bnxt: improve recovery related log messages

Make these messages more specific.

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

show more ...


# de3fef20 04-Jan-2022 Kalesh AP <[email protected]>

net/bnxt: set fast-path pointers only if recovery succeeds

During reset recovery, fixed to set the fast-path pointers
only if recovery succeeds.

Fixes: 720b55ad278e ("net/bnxt: fix crash caused by

net/bnxt: set fast-path pointers only if recovery succeeds

During reset recovery, fixed to set the fast-path pointers
only if recovery succeeds.

Fixes: 720b55ad278e ("net/bnxt: fix crash caused by error recovery")
Cc: [email protected]

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

show more ...


# 604a6be6 04-Jan-2022 Kalesh AP <[email protected]>

net/bnxt: cap maximum number of unicast MAC addresses

The Maximum number of receive mac addr is hard coded to 128
in the ethdev library(RTE_ETH_NUM_RECEIVE_MAC_ADDR).
But the bnxt devices support mo

net/bnxt: cap maximum number of unicast MAC addresses

The Maximum number of receive mac addr is hard coded to 128
in the ethdev library(RTE_ETH_NUM_RECEIVE_MAC_ADDR).
But the bnxt devices support more than 128 unicast MAC filters
which could result in a segfault while user tries to add more
than 128 unicast MAC addresses to the port.

Fixes: a2033fda22ab ("net/bnxt: fix number of MAC addresses for VMDq")
Cc: [email protected]

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

show more ...


# 87175489 04-Jan-2022 Kalesh AP <[email protected]>

net/bnxt: fix restoring VLAN filtering after recovery

During port start, driver calls bnxt_vlan_offload_set_op()
to program VLAN Filter/VLAN Strip setting to the HW. This
in turns add the vlan filte

net/bnxt: fix restoring VLAN filtering after recovery

During port start, driver calls bnxt_vlan_offload_set_op()
to program VLAN Filter/VLAN Strip setting to the HW. This
in turns add the vlan filters.

This results in a failure when bnxt_restore_filters() invokes
bnxt_restore_vlan_filters() during the recovery as the vlans are
already programmed.

Fix to ignore the error(-EEXIST).

Fixes: 151c8240ac6a ("net/bnxt: restore VLAN filters during reset recovery")
Cc: [email protected]

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

show more ...


# 9b4353be 04-Jan-2022 Kalesh AP <[email protected]>

net/bnxt: restore RSS configuration after reset recovery

During reset recovery, driver is not restoring the VNIC rss hash key.
It's generating a new random hash key which results in unexpected
RSS b

net/bnxt: restore RSS configuration after reset recovery

During reset recovery, driver is not restoring the VNIC rss hash key.
It's generating a new random hash key which results in unexpected
RSS behavior after recovery. Fixed this by storing the VNIC RSS
configuration to a local struct and then applying the cached value
during the recovery.

Fixes: df6cd7c1f73a ("net/bnxt: handle reset notify async event from FW")
Cc: [email protected]

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

show more ...


# 04689bdb 04-Jan-2022 Kalesh AP <[email protected]>

net/bnxt: fix multicast MAC restore during reset recovery

During reset recovery, driver is not restoring the multicast
mac addresses. Added code to restore them during reset recovery.

Fixes: b02f15

net/bnxt: fix multicast MAC restore during reset recovery

During reset recovery, driver is not restoring the multicast
mac addresses. Added code to restore them during reset recovery.

Fixes: b02f1573cd07 ("net/bnxt: restore MAC filters during reset recovery")
Cc: [email protected]

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

show more ...


# 4dc9409e 04-Jan-2022 Kalesh AP <[email protected]>

net/bnxt: fix multicast address set

Fix bnxt_dev_set_mc_addr_list_op.
Fix to cache the multicast mac addresses added to the port
to the driver private structure memory. Use this cached mc list
to pr

net/bnxt: fix multicast address set

Fix bnxt_dev_set_mc_addr_list_op.
Fix to cache the multicast mac addresses added to the port
to the driver private structure memory. Use this cached mc list
to program the FW.

This fixes an issue where multicast packets reception is
successful only if the multicast mac address of the packets
is the first one in the multicast address list of the port.

This is in preparation for another fix in the series.

Fixes: d69851df12b2 ("net/bnxt: support multicast filter and set MAC addr")
Cc: [email protected]

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

show more ...


Revision tags: v21.11, v21.11-rc4
# 720b55ad 19-Nov-2021 Somnath Kotur <[email protected]>

net/bnxt: fix crash caused by error recovery

bnxt_stop_rxtx() does not stop data path processing as intended
as it does not update the recently introduced fast-path pointers
'(struct rte_eth_fp_ops)

net/bnxt: fix crash caused by error recovery

bnxt_stop_rxtx() does not stop data path processing as intended
as it does not update the recently introduced fast-path pointers
'(struct rte_eth_fp_ops)->rx_pkt_burst'. Since both the burst routines
only use the fast-path pointer, the real burst routines get invoked
instead of the dummy ones set by bnxt_stop_rxtx() leading to crashes
in the data path (e.g. dereferencing freed structures)

Fix the segfault by updating the fast-path pointer as well

Fixes: c87d435a4d79 ("ethdev: copy fast-path API into separate structure")

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

show more ...


Revision tags: v21.11-rc3, v21.11-rc2
# 9ba1e167 03-Nov-2021 Kishore Padmanabha <[email protected]>

net/bnxt: remove devargs option for stats accumulation

The accumulation of flow counters is not determined by the application
device arguments anymore. Instead it is now dictated by the platform
cap

net/bnxt: remove devargs option for stats accumulation

The accumulation of flow counters is not determined by the application
device arguments anymore. Instead it is now dictated by the platform
capabilities whether to do software based accumulation or not.

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 ...


# 3d372e8d 03-Nov-2021 Shahaji Bhosle <[email protected]>

net/bnxt: increase flow scale for Thor

* Updated defines and data types to allow 256 VFRs.
* Increased the encap record cache to support 256 to 4K entries. So
VxLAN connections can be scaled to 4K

net/bnxt: increase flow scale for Thor

* Updated defines and data types to allow 256 VFRs.
* Increased the encap record cache to support 256 to 4K entries. So
VxLAN connections can be scaled to 4K entries.

Signed-off-by: Shahaji Bhosle <[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 ...


# b3c8396d 04-Nov-2021 Ajit Khaparde <[email protected]>

net/bnxt: remove unused functions

Remove unused functions from the code.
Specifically the following functions are being removed.

bnxt_get_iface_mac();
bnxt_get_vnic_id();
bnxt_get_parent_vnic_id();

net/bnxt: remove unused functions

Remove unused functions from the code.
Specifically the following functions are being removed.

bnxt_get_iface_mac();
bnxt_get_vnic_id();
bnxt_get_parent_vnic_id();
bnxt_get_bp();
bnxt_get_svif();
bnxt_get_fw_func_id();
bnxt_get_parif();
bnxt_get_phy_port_id();
bnxt_get_vport();
bnxt_get_interface_type();

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

show more ...


# 2fe6f1b7 02-Nov-2021 Dmitry Kozlyuk <[email protected]>

drivers/net: advertise no support for keeping flow rules

When RTE_ETH_DEV_CAPA_FLOW_RULE_KEEP capability bit is zero,
the specified behavior is the same as it had been before
this bit was introduced

drivers/net: advertise no support for keeping flow rules

When RTE_ETH_DEV_CAPA_FLOW_RULE_KEEP capability bit is zero,
the specified behavior is the same as it had been before
this bit was introduced. Explicitly reset it in all PMDs
supporting rte_flow API in order to attract the attention
of maintainers, who should eventually choose to advertise
the new capability or not. It is already known that
mlx4 and mlx5 will not support this capability.

For RTE_ETH_DEV_CAPA_FLOW_SHARED_OBJECT_KEEP
similar action is not performed,
because no PMD except mlx5 supports indirect actions.
Any PMD that starts doing so will anyway have to consider
all relevant API, including this capability.

Suggested-by: Ferruh Yigit <[email protected]>
Signed-off-by: Dmitry Kozlyuk <[email protected]>
Acked-by: Ajit Khaparde <[email protected]>
Acked-by: Somnath Kotur <[email protected]>
Acked-by: Hyong Youb Kim <[email protected]>
Reviewed-by: Ferruh Yigit <[email protected]>

show more ...


# 7bea87cd 30-Oct-2021 Kalesh AP <[email protected]>

net/bnxt: fix stat context allocation

stat_ctx_alloc is called within the context of each rx/tx ring.
i.e from bnxt_alloc_hwrm_rx_ring and bnxt_alloc_hwrm_tx_ring().
So, there is no need to invoke b

net/bnxt: fix stat context allocation

stat_ctx_alloc is called within the context of each rx/tx ring.
i.e from bnxt_alloc_hwrm_rx_ring and bnxt_alloc_hwrm_tx_ring().
So, there is no need to invoke bnxt_alloc_all_hwrm_stat_ctxs()
from bnxt_start_nic().

Fixes: 657c2a7f1dd4 ("net/bnxt: create aggregation rings when needed")

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

show more ...


# 40040587 30-Oct-2021 Kalesh AP <[email protected]>

net/bnxt: fix freeing aggregation rings

During port stop, we clear "eth_dev->data->scattered_rx" at the
beginning. As a result, in bnxt_free_hwrm_rx_ring() the check
bnxt_need_agg_ring() returns fal

net/bnxt: fix freeing aggregation rings

During port stop, we clear "eth_dev->data->scattered_rx" at the
beginning. As a result, in bnxt_free_hwrm_rx_ring() the check
bnxt_need_agg_ring() returns false and we end up not freeing
the Rx aggregation rings which results in resource leak in the FW.

Fixes: 657c2a7f1dd4 ("net/bnxt: create aggregation rings when needed")

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

show more ...


12345678910>>...21