Re: [PATCH] vhost: only emit debug log with invalid FD

2024-06-25 Thread David Marchand
On Mon, Jun 24, 2024 at 4:46 PM Maxime Coquelin wrote: > > This patch improves the FD manager logging in case > of FD removal from the epoll FD set failure. > > When the FD is not more valid, like for example if it is not valid anymore* > has already been closed, only emit a debug log and not >

RE: [PATCH] eventdev/dma: fix missing response info in forward mode

2024-06-25 Thread Amit Prakash Shukla
> -Original Message- > From: pbhagavat...@marvell.com > Sent: Monday, June 24, 2024 2:53 PM > To: Jerin Jacob ; Amit Prakash Shukla > > Cc: dev@dpdk.org; Pavan Nikhilesh Bhagavatula > > Subject: [PATCH] eventdev/dma: fix missing response info in forward mode > > From: Pavan Nikhilesh >

Re: [PATCH v2 2/9] test/bbdev: fix MLD output size computation

2024-06-25 Thread Maxime Coquelin
On 6/24/24 17:02, Hernan Vargas wrote: For perf tests, the operation size for the MLD-TS was incorrect. Fixed so that the performance numbers are correct. Largely cosmetic only. Fixes: 95f192a40e35 ("test/bbdev: add MLD cases") Cc: sta...@dpdk.org Signed-off-by: Hernan Vargas --- app/test

Re: [PATCH v2 7/9] test/bbdev: check assumptions on fft window

2024-06-25 Thread Maxime Coquelin
On 6/24/24 17:02, Hernan Vargas wrote: Add check for FFT window width. Signed-off-by: Hernan Vargas --- app/test-bbdev/test_bbdev_perf.c | 26 ++ app/test-bbdev/test_bbdev_vector.c | 14 ++ app/test-bbdev/test_bbdev_vector.h | 2 ++ 3 files changed

Re: [PATCH v3 5/5] net/cnxk: fix representor port mapping

2024-06-25 Thread Jerin Jacob
On Mon, Jun 24, 2024 at 6:54 PM Harman Kalra wrote: > > From: Hanumanth Pothula > > As part of ready and exit messages only first half of the ports > were processed, i.e. represented to representor port mapping was > setup and released. While later half of the ports were not > processed. > > Fixe

[PATCH] vhost: Fix the crash caused by accessing the released memory

2024-06-25 Thread Xinxin Zhao
The rte_vhost_driver_unregister() vhost_user_read_cb() vhost_user_client_reconnect() can be called at the same time by 3 threads. when memory of vsocket is freed in rte_vhost_driver_unregister(), then vhost_user_read_cb() maybe add vsocket to reconn_list, the invalid memory of vsocket is accessed i

[PATCH v3 000/129] Update net/ice base driver to latest upstream snapshot

2024-06-25 Thread Anatoly Burakov
This is a patchset loosely based on internal development tree which tracked ICE driver development over a period of time since last snapshot update. v2-> v3: - Fixed commit authorship for commits where it was feasible to do so - Addressed review comments - Clarified and corrected a few commit mess

[PATCH v3 002/129] net/ice/base: replace ICE_SUCCESS with int

2024-06-25 Thread Anatoly Burakov
From: Przemek Kitszel Replace all usages of ICE_SUCCESS with its integer equivalent. Signed-off-by: Przemek Kitszel Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_acl.c | 2 +- drivers/net/ice/base/ice_acl_ctrl.c | 16 +-- drivers/net/ice/base/ice_common.c| 78 +++--

[PATCH v3 003/129] net/ice/base: add E830 definitions

2024-06-25 Thread Anatoly Burakov
From: Paul Greenwalt Add initial set of E830-related definitions. Signed-off-by: Paul Greenwalt Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_hw_autogen.h | 79 +-- 1 file changed, 50 insertions(+), 29 deletions(-) diff --git a/drivers/net/ice/base/ice_hw_aut

[PATCH v3 004/129] net/ice/base: update phy config during link restart

2024-06-25 Thread Anatoly Burakov
From: Siddaraju DH Update en_link in curr_user_phy_cfg.caps on successful execution of set_link_restart_an operation. Signed-off-by: Siddaraju DH Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_common.c | 12 +++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/dr

[PATCH v3 005/129] net/ice/base: fix for pointer to variable outside scope

2024-06-25 Thread Anatoly Burakov
From: Stefan Wegrzyn Currently, the 'temp' variable is in the same scope as 'first_teid_ptr' and we take point to it, which means on new loop iterations the memory goes out of scope and we keep a dangling pointer. Move 'temp' to outside of the loop to fix it. Signed-off-by: Stefan Wegrzyn Signe

[PATCH v3 006/129] net/ice/base: add missing include

2024-06-25 Thread Anatoly Burakov
From: Jesse Brandeburg When building with certain targets, a missing include was causing a compilation failure. Add the missing include. Signed-off-by: Jesse Brandeburg Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_flow.h | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/ne

[PATCH v3 007/129] net/ice/base: add ability to set markid via switch filter

2024-06-25 Thread Anatoly Burakov
From: Zhirun Yan Support to add large action to set 32 bits markid via switch filter. Signed-off-by: Zhirun Yan Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_switch.c | 22 -- drivers/net/ice/base/ice_switch.h | 24 2 files changed, 24 ins

[PATCH v3 008/129] net/ice/base: improve ice_debug_cq messages

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller The ice_debug_cq function is called to print debug data for a control queue descriptor in multiple places. This includes both before we send a message on a transmit queue, after the writeback completion of a message on the transmit queue, and when we receive a message on a rece

[PATCH v3 009/129] net/ice/base: add mgmt netlist auth support command

2024-06-25 Thread Anatoly Burakov
From: Fabio Pricoco Add new Admin Q command to check if netlist auth is supported. Signed-off-by: Fabio Pricoco Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_common.c | 5 + drivers/net/ice/base/ice_type.h | 2 ++ 2 files changed, 7 insertions(+) diff --git a/drivers/net/ice/b

[PATCH v3 010/129] net/ice/base: avoid undefined variables

2024-06-25 Thread Anatoly Burakov
From: Fabio Pricoco Initialize some variable to avoid "variable might be not defined" warning. This is due to the fact that when using silicon validation tools, sometimes alternative fragments of code are being executed exclusively thanks to use of goto, which some compilers cannot handle correct

[PATCH v3 011/129] net/ice/base: improve media type handling for phy caps

2024-06-25 Thread Anatoly Burakov
From: Paul Greenwalt The use of get link status PHY type for determining the media type can result in incorrect reporting the incorrect media type. This can happen for a couple reasons: 1. The get link states current PHY type field can return non-PHY type values (i.e. bit 127 indicates link sta

[PATCH v3 013/129] net/ice/base: update interface in ice_parse_common_caps

2024-06-25 Thread Anatoly Burakov
From: Dawid Zielinski New flag for external topology devices for different types of versioning. Signed-off-by: Dawid Zielinski Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_common.c | 6 ++ drivers/net/ice/base/ice_type.h | 2 ++ 2 files changed, 8 insertions(+) diff --git a/d

[PATCH v3 012/129] net/ice/base: update flow seg fields to declared bitmaps

2024-06-25 Thread Anatoly Burakov
From: Ashish Shah ice_flow_seg_info fields match and range are being used with bit operations but not declared as bitmaps. This can cause issues when casting values greater than 32. This change is to declare them as proper bitmaps so that the bitmap operations can function as intended. Signed-of

[PATCH v3 014/129] net/ice/base: refactor (non) bitmap declarations

2024-06-25 Thread Anatoly Burakov
From: Jesse Brandeburg The firmware interface definition file mistakenly started using bitmap declarations for its storage in a couple of structures. The data structure contains a "bit-map" of bits that the hardware/firmware sets or reads but it's not a DECLARE_BITMAP style bitmap and it's not ac

[PATCH v3 015/129] net/ice/base: remove unnecessary control queue cmd_buf arrays

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller The driver allocates a cmd_buf array in addition to the desc_buf array. This array stores an ice_sq_cd command details structure for each entry in the control queue ring. The contents of the structure are copied from the value passed in via ice_sq_send_cmd, and include only a

[PATCH v3 016/129] net/ice/base: alloc port_info only once

2024-06-25 Thread Anatoly Burakov
From: Michal Swiatkowski When devlink reload is called port_info should stay. Check if it wasn't already allocated before doing allocation. Signed-off-by: Michal Swiatkowski Signed-off-by: Anatoly Burakov --- drivers/net/ice/base/ice_common.c | 3 ++- 1 file changed, 2 insertions(+), 1 deleti

[PATCH v3 017/129] net/ice/base: update code with flex array safe allocations

2024-06-25 Thread Anatoly Burakov
From: Jesse Brandeburg The Linux Kernel is now requiring flex array safe allocations from drivers, so the code is being updated to reflect the changes required to match Linux upstream code. Signed-off-by: Jesse Brandeburg Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_adminq_cmd.h |

[PATCH v3 018/129] net/ice/base: support for OROM update in recovery mode

2024-06-25 Thread Anatoly Burakov
From: Fabio Pricoco OROM update in recovery mode is allowed or not based on function capability 0x0090. This patch adds capability parsing for it. Signed-off-by: Fabio Pricoco Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_adminq_cmd.h | 1 + drivers/net/ice/base/ice_common.c | 5

[PATCH v3 019/129] net/ice/base: improve find recipe routine

2024-06-25 Thread Anatoly Burakov
From: Grzegorz Nitka Return error if there were no recipes found. Signed-off-by: Grzegorz Nitka Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_switch.c | 5 + 1 file changed, 5 insertions(+) diff --git a/drivers/net/ice/base/ice_switch.c b/drivers/net/ice/base/ice_switch.c index

[PATCH v3 020/129] net/ice/base: fix memory leak when checking firmware version

2024-06-25 Thread Anatoly Burakov
From: Eric Joyner If ice_cfg_phy_fec() goes through case ICE_FEC_DIS_AUTO but the underlying device firmware isn't the correct version, then the memory used to hold the PHY capabilities output from the firmware isn't freed. Fix this by making sure the memory is freed by jumping to the label that

[PATCH v3 021/129] net/ice/base: add LL Tx timestamp interrupt read

2024-06-25 Thread Anatoly Burakov
From: Karol Kolacinski E810 products can support low latency Tx timestamp register read using the SW interrupt from the FW. Add a check for the device capability and use the new method if supported. Signed-off-by: Karol Kolacinski Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_common.

[PATCH v3 022/129] net/ice/base: use model-dependent number of PHY ports

2024-06-25 Thread Anatoly Burakov
From: Sergey Temerkhanov Set up and use model-dependent number of PHY ports. Also fix iterations over PTP ports. Define 'max_phy_port', a new ice_hw struct member to store the max port number handled by given clock owner. Replace 'phy_ports' with 'max_phy_port' for max range in iterations over

[PATCH v3 023/129] net/ice/base: use ice_bitmap_t in promisc functions

2024-06-25 Thread Anatoly Burakov
From: Mateusz Pacuszka Currently all functions related to promiscuous modes use u8 bit mask. All 8 bits are utilized already and to be able to add any new flag, all the drivers need to comply. To address that, change u8 into ice_bitmap_t and use dedicated functions to process it. Signed-off-by:

[PATCH v3 024/129] net/ice/base: fix rx-only unicast promiscuous mode

2024-06-25 Thread Anatoly Burakov
From: Mateusz Pacuszka Currently for unicast promiscuous, the driver is adding a LOOKUP_RX filter rule using recipe 3. The direction bit in this recipe is the pkt_is_from_network flag, so the filter only matches on packets from the network, not loopback packets. To match loopback packets without

[PATCH v3 025/129] net/ice/base: add support for E825-C TX clock changing

2024-06-25 Thread Anatoly Burakov
From: Michal Michalik E825-C hardware has a new feature which allows to change the clocks which drives the TX on the PHYs. The registers are accessed directly no interaction with FW via admin queue commands. Add this support. Signed-off-by: Michal Michalik Signed-off-by: Ian Stokes --- driver

[PATCH v3 026/129] net/ice/base: fix for applying multiple cloud filters

2024-06-25 Thread Anatoly Burakov
From: Robert Malz When applying UDP cloud filter with tunnel type different than VXLAN for each of the filter new recipe will be created instead of using already created one. This will quickly use all of the resources for specific recipe. Modified check to detect if recipe with similar tunnel typ

[PATCH v3 027/129] net/ice/base: prevent potential integer overflow

2024-06-25 Thread Anatoly Burakov
From: Lukasz Plachno The original bit-shift was made on a 16-bit value which could overflow. Use 64-bit integer to do bit-shifts instead. Signed-off-by: Lukasz Plachno Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_parser_rt.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)

[PATCH v3 028/129] net/ice/base: implement initial PTP support for E830

2024-06-25 Thread Anatoly Burakov
From: Michal Michalik The new series of devices supported by ice driver are E830 devices. This hardware supports the PTP feature very similar to E810 devices. The main difference besides some other register addresses is that in E830 we are able to read the TX timestamps memory directly from BARs

[PATCH v3 029/129] net/ice/base: fix resource leak

2024-06-25 Thread Anatoly Burakov
From: Fabio Pricoco When errors happen during OROM reads, the allocated buffer is not freed. Fix it by adding a goto label to free the buffer in case of error. Signed-off-by: Fabio Pricoco Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_nvm.c | 10 ++ 1 file changed, 6 insertio

[PATCH v3 030/129] net/ice/base: move lock outside of if-else

2024-06-25 Thread Anatoly Burakov
From: Jesse Brandeburg When previous version of driver snapshot was generated, there was a "fix" applied to it that moved the lock inside the if-else block. This change was made in error and was later reverted in the base driver, so adjust accordingly. Signed-off-by: Jesse Brandeburg Signed-off

[PATCH v3 031/129] net/ice/base: refactor control queue send delay

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller Since we know that most side band queue messages complete within 2-3 microseconds, introduce an initial 5 microsecond delay before we enter the main timeout loop. Use ice_flush(hw) first to ensure that we immediately flush the tail bump before delaying. This should mean that in

[PATCH v3 032/129] net/ice/base: allow for dumping all clusters

2024-06-25 Thread Anatoly Burakov
From: Stefan Wegrzyn Adjust ice_aq_get_internal_data() wrapping function so that it returns next cluster ID when iterating over clusters, as well as add missing cluster definition. Signed-off-by: Stefan Wegrzyn Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_adminq_cmd.h | 4 ++-- dri

[PATCH v3 033/129] net/ice/base: remove PTP aqc_driver_params

2024-06-25 Thread Anatoly Burakov
From: Karol Kolacinski With the introduction of PTP auxiliary bus driver, aqc_driver_params are no longer needed to share data between the PFs. Signed-off-by: Karol Kolacinski Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_adminq_cmd.h | 5 - 1 file changed, 5 deletions(-) diff -

[PATCH v3 034/129] net/ice/base: change data buffer in i2c write to be const

2024-06-25 Thread Anatoly Burakov
From: Yochai Hagvi Data should not be changed by generic i2c write, hence it should be const. Signed-off-by: Yochai Hagvi Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_common.c | 2 +- drivers/net/ice/base/ice_common.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --

[PATCH v3 035/129] net/ice/base: fix sign-extension

2024-06-25 Thread Anatoly Burakov
From: Jesse Brandeburg Fix a static analysis warning where if the 16-bit value in mask has the high-bit set, it will be sign extended by the shift left (which converts it to a signed integer). Avoid this by casting to a u32 to make sure the conversion happens before the shift and that it stays un

[PATCH v3 036/129] net/ice/base: add helper function for refsync

2024-06-25 Thread Anatoly Burakov
From: Yochai Hagvi Add a helper function to determine whether a given pin of DPLL is capable for refsync configuration. Signed-off-by: Yochai Hagvi Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_ptp_hw.c | 16 drivers/net/ice/base/ice_ptp_hw.h | 1 + 2 files changed,

[PATCH v3 037/129] net/ice/base: added informational message for NAC topology

2024-06-25 Thread Anatoly Burakov
From: Prathisna Padmasanan Signed-off-by: Prathisna Padmasanan Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_common.c | 4 1 file changed, 4 insertions(+) diff --git a/drivers/net/ice/base/ice_common.c b/drivers/net/ice/base/ice_common.c index ff98919e40..61cf6da3ad 100644 ---

[PATCH v3 038/129] net/ice/base: add Cage Max Power override NVM module

2024-06-25 Thread Anatoly Burakov
From: Wojciech Drewek Define Cage Max Power override NVM module which allows to override maximum power of QSFP/SFP cage. There might be up to 8 cages so each of them has its own word in the module. From the ice driver perspective we need only Override Enable bit so there is no need to define bits

[PATCH v3 039/129] net/ice/base: adapt No FEC in Auto support check to add E82X devices

2024-06-25 Thread Anatoly Burakov
From: Eric Joyner Previously, the "No FEC in Auto mode" feature was added to the link management engine (part of firmware) for E810 devices, and was unsupported at the time on E82X devices. However, this support is now being extended to new FW versions for E82X devices, and so the SW check to ena

[PATCH v3 040/129] net/ice/base: fix incorrect size when allocating children arrays

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller The ice_sched_add_root_node() and ice_sched_add_node() functions have comments to suppress Coverity warnings about a suspicious sizeof used when allocating the children array of an struct ice_sched_node. The size is calculated using the size of the scheduler node, which overal

[PATCH v3 041/129] net/ice/base: fix GCS descriptor field offsets

2024-06-25 Thread Anatoly Burakov
From: Eric Joyner Update the offsets, and remove the ICE_TX_GCS_DESC_ENA define since a non-0 value used for the ICE_TX_GCS_DESC_TYPE field will enable GCS offload; there is no dedicated bit to enable it anymore. Signed-off-by: Eric Joyner Signed-off-by: Ian Stokes --- drivers/net/ice/base/ic

[PATCH v3 042/129] net/ice/base: add VSI type for subfunctions

2024-06-25 Thread Anatoly Burakov
From: Piotr Raczynski Add a separate VSI type for devlink subfunctions due to specific handling in the driver. Signed-off-by: Piotr Raczynski Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_type.h | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/ice/base/ice_type.h b/dri

[PATCH v3 043/129] net/ice/base: correct the return type of ice_bitmap_hweight

2024-06-25 Thread Anatoly Burakov
From: Chinh Cao "count" is the returned value, and in this function, value of "count" and "bit" are the same, so there is no reason why these values should be declared as different types, and for returned value data type to be different. Signed-off-by: Chinh Cao Signed-off-by: Ian Stokes ---

[PATCH v3 044/129] net/ice/base: fix ice_ptp_one_port_cmd to avoid stale PHY commands

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller Code using ice_ptp_one_port_cmd() (or the device specific variants for E822 and ETH56G) has a subtle bug where-in the executing of ice_ptp_exec_tmr_cmd() will cause all other ports to execute their last executed command. Most flows operate on all timers at once, but some flows

[PATCH v3 046/129] net/ice/base: use ICE_PTP_NOP to better indicate no action

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller A couple of E822 PTP functions use ICE_PTP_READ_TIME on the main timer to avoid any side effects when programming a single PHY port. Match the ETH56G code by using ICE_PTP_NOP instead, which better reflects the intended behavior. Signed-off-by: Jacob Keller Signed-off-by: Ian

[PATCH v3 045/129] net/ice/base: remove dead code from ice_get_ddp_pkg_state

2024-06-25 Thread Anatoly Burakov
From: Adrian Pielech Removed "else" statement in ice_get_ddp_pkg_state() as it may never happen. Signed-off-by: Adrian Pielech Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_ddp.c | 5 + 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/net/ice/base/ice_ddp.c b/d

[PATCH v3 048/129] net/ice/base: use "err" instead of "status" in ice_ptp_hw.c

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller With the exception of a few functions, the upstream Linux version of ice_ptp_hw.c switched to using "int err" early before the initial conversion of "enum ice_status status" to "int status" was completed. This results in the upstream version using a different variable name than

[PATCH v3 047/129] net/ice/base: add fw log file

2024-06-25 Thread Anatoly Burakov
From: Fabio Pricoco Shared code has a fw_log.c file that is used to handle the firmware logging. For DPDK it's empty, but it is added to reduce delta between DPDK and shared code. Signed-off-by: Fabio Pricoco Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_fwlog.c

[PATCH v3 049/129] net/ice/base: re-number E810-T subdevice IDs to match upstream

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller When upstreaming the E810-T support for Linux, during review it was pointed out that the E810T subdevice IDs numbering was odd. The subdevice ID numbers seemed to be arbitrary. The upstream driver re-numbered the subdevice ID values so that they were in increasing order. Align

[PATCH v3 050/129] net/ice/base: enable RDMA Act-Act unload paths

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller In certain unload conditions the non-standard paths to breaking down the bond supporting resources need special considerations in that there could be nodes moved out of the tree and this can cause a NULL pointer to be passed into the find node by teid function. Add in a NULL p

[PATCH v3 051/129] net/ice/base: parse 1PPS GPIO in 1588 function caps

2024-06-25 Thread Anatoly Burakov
From: "Temerkhanov, Sergey" Check for 1PPS GPIO association in 1588 function caps. Remove legacy code related to a workaround setting 1588 capabilities to a fixed value. Signed-off-by: Temerkhanov, Sergey Signed-off-by: Nitka, Grzegorz Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_c

[PATCH v3 053/129] net/ice/base: fall back to safe CGU params

2024-06-25 Thread Anatoly Burakov
From: Karol Kolacinski If TS PLL fails to lock to the values from the capabilities, retry with safe internal 25 MHz TCXO in nanosecond mode. This prevents PTP init fail and does not disturb nominal initialization of the device. Signed-off-by: Karol Kolacinski Signed-off-by: Ian Stokes --- dri

[PATCH v3 052/129] net/ice/base: fix check for existing switch rule

2024-06-25 Thread Anatoly Burakov
From: Mateusz Pacuszka In case the rule already exists and another VSI wants to subscribe to it new VSI list is being created and both VSIs are moved to it. Currently, the check for already existing VSI with the same rule is done based on fdw_id.hw_vsi_id, which applies only to LOOKUP_RX flag. Ch

[PATCH v3 054/129] net/ice/base: change tmr_idx to u32

2024-06-25 Thread Anatoly Burakov
From: Yochai Hagvi When converting to source timer command value, tmr_idx is left shifted by 8 (CPK_SRC_SEL), which overflows the 8-bit data type. Change to 32-bit. Signed-off-by: Yochai Hagvi Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_ptp_hw.c | 3 +-- 1 file changed, 1 insertion

[PATCH v3 056/129] net/ice/base: update strict status when assigning BW limits

2024-06-25 Thread Anatoly Burakov
From: Dave Ertman In the BW configuration performed by DCF functions, the strict/WFQ and priority field (referred to as Generic in the EAS) is not updated in the FW. This needs to be updated so as to not incorrectly allocate BW credits in the traffic shaping Tx scheduler. Signed-off-by: Dave Er

[PATCH v3 057/129] net/ice/base: improve read retry value calculation

2024-06-25 Thread Anatoly Burakov
From: Bartosz Staszewski Previous implementation of PHY timestamp retry value was set to a static value that had no meaning. Change it to calculate it based on a set of meaningfully named macros, as well as adjust data type to avoid overflows. Signed-off-by: Bartosz Staszewski Signed-off-by: Ia

[PATCH v3 058/129] net/ice/base: check if recipe buffer was already allocated

2024-06-25 Thread Anatoly Burakov
From: NorbertX Ciosek Check if recipe buffer was already allocated before allocating new one. Without such check it is possible to get memory leak when overwriting pointer address. Signed-off-by: NorbertX Ciosek Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_switch.c | 3 +++ 1 file c

[PATCH v3 059/129] net/ice/base: use correct type

2024-06-25 Thread Anatoly Burakov
From: Fabio Pricoco num_rules was defined u16 but it should be u8 as it is passed to function ice_aq_sw_rules which expects u8. Signed-off-by: Fabio Pricoco Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_switch.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/driv

[PATCH v3 062/129] net/ice/base: check array bounds

2024-06-25 Thread Anatoly Burakov
From: Waldemar Dworakowski Some compilation targets were generating errors due to unchecked array bounds when accessing recipe groups. Add a check to avoid that. Signed-off-by: Waldemar Dworakowski Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_switch.c | 14 -- 1 file cha

[PATCH v3 055/129] net/ice/base: be more verbose when preparing timer sync

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller Add an informative error message when preparing external PHYs for a timer sync fails. Signed-off-by: Jacob Keller Signed-off-by: Anatoly Burakov --- drivers/net/ice/base/ice_ptp_hw.c | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/drivers/net

[PATCH v3 063/129] net/ice/base: copy output IO params from command descriptor

2024-06-25 Thread Anatoly Burakov
From: Dawid Zielinski Coppied output IO params returned from get netlist node pin command descriptor so SW could use it. Fixed defines related to output IO params. Signed-off-by: Dawid Zielinski Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_adminq_cmd.h | 4 ++-- 1 file changed, 2 in

[PATCH v3 061/129] net/ice/base: ignore snprintf return value

2024-06-25 Thread Anatoly Burakov
From: Waldemar Dworakowski Certain compilation targets were generating compile errors due to snprintf return value not being checked. Fix it by ignoring the return value explicitly. Signed-off-by: Waldemar Dworakowski Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_common.c | 2 +- 1 f

[PATCH v3 060/129] net/ice/base: read OROM in a loop

2024-06-25 Thread Anatoly Burakov
From: Jaroslaw Ilgiewicz Previously NVM was once acquired and OROM was read to RAM in 4KB chunks. Changed this to a loop in which with each iteration NVM is acquired and only 4 bytes are read. Signed-off-by: Jaroslaw Ilgiewicz Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_nvm.c | 43

[PATCH v3 065/129] net/ice/base: fix potential TLV length overflow

2024-06-25 Thread Anatoly Burakov
From: Paul Greenwalt It's possible that an NVM with an invalid tlv_len could cause an integer overflow of next_tlv which can result an infinite loop. Fix this issue by changing next_tlv from u16 to u32 to prevent overflow. Also check that tlv_len is valid and less than pfa_len. Fix an issue wit

[PATCH v3 064/129] net/ice/base: enable Next Cluster ID capability

2024-06-25 Thread Anatoly Burakov
From: Remigiusz Konca Updated data sheet added a new capability 'Next Cluster ID' defined as 0x0096, so add a define for it. Signed-off-by: Remigiusz Konca Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_adminq_cmd.h | 2 +- drivers/net/ice/base/ice_common.c | 5 + drivers/net/

[PATCH v3 066/129] net/ice/base: add function to read SDP section from NVM

2024-06-25 Thread Anatoly Burakov
From: Tomaszx Wakula Add API and definitions related to reading Software Definable Pin section from NVM, related to PTP pins assignment. Signed-off-by: Tomaszx Wakula Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_adminq_cmd.h | 23 +++ drivers/net/ice/base/ice_ptp_hw.c | 87 +

[PATCH v3 068/129] net/ice/base: add defines for loopback mode

2024-06-25 Thread Anatoly Burakov
From: Pabitra Dalai To reflect updates in the data sheet, add: - loopback mode value into ice_aqc_set_port_params - required defines to support loopback mode - added loopback mode handling in ice_port_info Signed-off-by: Pabitra Dalai Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_ad

[PATCH v3 067/129] net/ice/base: add Floating VEB support

2024-06-25 Thread Anatoly Burakov
From: Pawel Sobczyk Added sw_id variables to ice_fltr_info struct and disable lan_en flag for Floating VEB VSIs. Signed-off-by: Pawel Sobczyk Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_switch.c | 6 -- drivers/net/ice/base/ice_switch.h | 3 +++ 2 files changed, 7 insertions(+)

[PATCH v3 069/129] net/ice/base: allow skipping PF clear

2024-06-25 Thread Anatoly Burakov
From: Stefan Wegrzyn As per updated data sheet, add 'skip_clear_pf' field to ice_hw structure, which can be used to skip call to ice_clear_pf_cfg() in ice_init_hw(). Also, make 'fw_vsi_num' field of ice_hw structure visible to every component using shared code. Signed-off-by: Stefan Wegrzyn Sig

[PATCH v3 071/129] net/ice/base: make ice_clear_vsi_q_ctx() non-static

2024-06-25 Thread Anatoly Burakov
From: Stefan Wegrzyn Driver tools need to call ice_clear_vsi_q_ctx() from outside of ice_switch.c so the function had to become non-static. Signed-off-by: Stefan Wegrzyn Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_switch.c | 2 +- drivers/net/ice/base/ice_switch.h | 1 + 2 files ch

[PATCH v3 070/129] net/ice/base: fix in the definition of the Board Type

2024-06-25 Thread Anatoly Burakov
From: Waldemar Dworakowski The new version is compliant with implementation and documentation Signed-off-by: Waldemar Dworakowski Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_adminq_cmd.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/ice/base/ic

[PATCH v3 072/129] net/ice/base: fix package download algorithm

2024-06-25 Thread Anatoly Burakov
From: Dan Nowlin Previously, the code would assume that only "Modular Signature Segment" existed. Given a package with both a "Reference Signature Segment" and a "Modular Signature Segment" the download would not have been successful because an incorrect sequence of buffers would be sent to the f

[PATCH v3 073/129] net/ice/base: allows packages with mixed signature presence

2024-06-25 Thread Anatoly Burakov
From: Dan Nowlin As a temporary workaround to allow unsigned packages, there needs to be support for configuration segments that are unsigned. Allow packages that have some configuration segments that are signed and some configuration segments that are not signed. The code has been changed to de

[PATCH v3 074/129] net/ice/base: fix ice_memcpy type specifiers

2024-06-25 Thread Anatoly Burakov
From: Stefan Wegrzyn Wrong type specifiers were used in ice_write_*(), ice_read_*() and ice_sched_add_root_node() functions. When using silicon validation tools, those functions are operating on user space buffers and therefore the ice_memcpy type has to be set to ICE_NONDMA_TO_NONDMA. Signed-of

[PATCH v3 075/129] net/ice/base: allow different FW API versions based on MAC type

2024-06-25 Thread Anatoly Burakov
From: Dan Nowlin Allow the driver to be compatible with different FW API versions based on the device's MAC type. Currently, E810 is only compatible with one FW API version. Now the driver can be compatible with different FW API versions for both E810 and E830. Signed-off-by: Dan Nowlin Signed-

[PATCH v3 076/129] net/ice/base: add 32 GT bus speed enumerated value

2024-06-25 Thread Anatoly Burakov
From: Dan Nowlin Add ice_pcie_speed_32_0GT bus speed enum to support E830 device's higher bus speed. Signed-off-by: Dan Nowlin Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_type.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/ice/base/ice_type.h b/

[PATCH v3 077/129] net/ice/base: add E830 debug dump cluster ID values

2024-06-25 Thread Anatoly Burakov
From: Ian Stokes Add E830 debug dump cluster ID values, and rename E810 cluster IDs to make it easier to distinguish which values are which. Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_adminq_cmd.h | 37 ++- drivers/net/ice/ice_diagnose.c| 2 +- 2 fi

[PATCH v3 079/129] net/ice/base: support for firmware sanitization

2024-06-25 Thread Anatoly Burakov
From: Fabio Pricoco Add support for AQ 0x070C. Includes ice_nvm_sanitize and a helper function ice_nvm_sanitize_operate to facilitate the operate request. Signed-off-by: Fabio Pricoco Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_adminq_cmd.h | 25 drivers/net/ice/base/i

[PATCH v3 078/129] net/ice/base: fix for preparing PHY for timesync command

2024-06-25 Thread Anatoly Burakov
From: Tomaszx Wakula Preparing a port for timesync command procedure shall provide Rx type which indicates the type for the Rx metadata in the ONPI interface. According to the documentation, Rx type should always equal 0x18. Signed-off-by: Tomaszx Wakula Signed-off-by: Ian Stokes --- drivers/

[PATCH v3 080/129] net/ice/base: add 200G speeds to PHY types decoding

2024-06-25 Thread Anatoly Burakov
From: Dan Nowlin Add the 200G speeds to the ice_get_link_speed_based_on_phy_type function. This allows detection of 200G speed instead of UKNOWN. Signed-off-by: Dan Nowlin Signed-off-by: Alice Michael Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_adminq_cmd.h | 1 + drivers/net/ice

[PATCH v3 081/129] net/ice/base: add PHY OFFSET_READY register clearing

2024-06-25 Thread Anatoly Burakov
From: Karol Kolacinski Add a possibility to mark all transmitted/received timestamps as invalid by clearing PHY OFFSET_READY registers. Signed-off-by: Karol Kolacinski Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_ptp_hw.c | 84 +++ drivers/net/ice/base/ic

[PATCH v3 082/129] net/ice/base: rename PHY model designator fields and functions

2024-06-25 Thread Anatoly Burakov
From: Sergey Temerkhanov Rename the PHY model designating fields, functions, etc to make the code more readable and distinguish it from the "PHY type" as described in the documentation. Signed-off-by: Sergey Temerkhanov Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_ptp_hw.c | 44

[PATCH v3 083/129] net/ice/base: enable SB access explicitly before 1st PHY access

2024-06-25 Thread Anatoly Burakov
From: Sergey Temerkhanov Explicitly enable sideband device access before the first PHY access to avoid possible errors for ETH56G. Signed-off-by: Sergey Temerkhanov Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_ptp_hw.c | 38 +++ 1 file changed, 29 inserti

[PATCH v3 084/129] net/ice/base: refactor ETH56G PHY initialization

2024-06-25 Thread Anatoly Burakov
From: Sergey Temerkhanov Assign the ETH56G PHY address according to the PCI IDs in preparation for further changes. Signed-off-by: Sergey Temerkhanov Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_ptp_hw.c | 39 +++--- drivers/net/ice/base/ice_ptp_hw.h | 2 +

[PATCH v3 085/129] net/ice/base: refactor ETH56G support for multiple PHYs per MAC

2024-06-25 Thread Anatoly Burakov
From: Sergey Temerkhanov Support configurations with multiple ETH56G PHYs per a MAC complex. These PHYs have their own addresses and are supposed to have their ports numbered contiguously. This commit mainly provides port number translation for these configurations. Also, handle dual NAC correct

[PATCH v3 086/129] net/ice/base: implement interface to reset timestamp memory

2024-06-25 Thread Anatoly Burakov
From: Karol Kolacinski Add an interface to clear the timestamp memory block for E822 and ETH56G based devices. Signed-off-by: Karol Kolacinski Signed-off-by: Ian Stokes --- drivers/net/ice/base/ice_ptp_hw.c | 65 +++ drivers/net/ice/base/ice_ptp_hw.h | 2 + 2 file

[PATCH v3 087/129] net/ice/base: return high address for multi-read eth56g registers

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller The eth56g register checks for 40b and 64b registers do not return the high address offset. Instead it is expected that all offsets are exactly 4 bytes apart in the expected order. The e822 implementations explicitly return the address in the lookup function. This form is bette

[PATCH v3 088/129] net/ice/base: add function to read Tx timestamp status register

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller Both e822 and eth56g based hardware have a register indicating the status of timestamps in the Tx timestamp memory bank. This register is used to indicate which timestamps are currently valid. This is important because the interrupt logic for these devices assumes that software

[PATCH v3 089/129] net/ice/base: implement upper-level PHY control functions

2024-06-25 Thread Anatoly Burakov
From: Sergey Temerkhanov Implement upper-level PHY control functions as well as required device specific defines. These include functions returning basic 56G PHY timing parameters and definitions for constant parameters. Signed-off-by: Sergey Temerkhanov Signed-off-by: Ian Stokes --- drivers/

[PATCH v3 090/129] net/ice/base: squash multiple fixes for e56g device

2024-06-25 Thread Anatoly Burakov
From: Jacob Keller This commit has multiple fixes related to comments updates, possible unitialized variable use and finally a bug fix related to stale PHY commands. Details of the bug fix are included below as it represents the bulk of the changes. Code using ice_ptp_one_port_cmd() (or the devi

[PATCH v3 091/129] net/ice/base: allow passing flags to sbq command

2024-06-25 Thread Anatoly Burakov
From: Aviraj CJ Currently, sending a command to Sideband Queue (SBQ) is done with unconditionally setting `ICE_AQ_FLAG_RD` flag. This patch allows the caller to pass flags to the SBQ command function, and amends all call sites as needed. Signed-off-by: Aviraj CJ Signed-off-by: Ian Stokes ---

[PATCH v3 092/129] net/ice/base: move ice_ptp_init_phy_model to align with upstream

2024-06-25 Thread Anatoly Burakov
Upstream code has this function in a different place, so move it to match the upstream code. Signed-off-by: Anatoly Burakov --- drivers/net/ice/base/ice_ptp_hw.c | 127 +++--- 1 file changed, 63 insertions(+), 64 deletions(-) diff --git a/drivers/net/ice/base/ice_ptp_hw.

[PATCH v3 093/129] net/ice/base: add Get Link Status Data version 2

2024-06-25 Thread Anatoly Burakov
From: Paul Greenwalt E830 introduces a new version of Get Link Status Data which increases the size of struct ice_aqc_get_link_status_data from 32 bytes to 51 bytes. Add new link partner fields to ice_aqc_get_link_status_data; PHY type, FEC, and flow control. Add new ICE_GET_LINK_STATUS_DATA_V2

[PATCH v3 094/129] net/ice/base: add port option commands

2024-06-25 Thread Anatoly Burakov
Adds the Set/Get Port Options commands (0x06EA/0x06EB), also include additional status and ID bits to improve the Link topology configuration as well as ability to change port option from pre-boot environment via the UEFI driver. Signed-off-by: Anatoly Burakov --- drivers/net/ice/base/ice_adminq

  1   2   >