> -Original Message-
> From: Intel-wired-lan On Behalf Of Jacob
> Keller
> Sent: Wednesday, July 31, 2024 6:56 PM
> To: Intel Wired LAN ; Nguyen, Anthony L
>
> Cc: Keller, Jacob E
> Subject: [Intel-wired-lan] [PATCH iwl-net] ice: fix accounting for filters
> shared by
> multiple VSIs
>
This series cleans up current PTP GPIO pin handling, fixes minor bugs,
refactors implementation for all products, introduces SDP (Software
Definable Pins) for E825C and implements reading SDP section from NVM
for E810 products.
Karol Kolacinski (5):
ice: Implement ice_ptp_pin_desc
ice: Add SD
Add a new internal structure describing PTP pins.
Use the new structure for all non-E810T products.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
V1 -> V2: Removed unused err variable
drivers/net/ethernet/intel/ice/ice_ptp.c | 270 +++
drivers/net/et
Add support of PTP SDPs (Software Definable Pins) for E825C products.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
V1 -> V2: Removed redundant n_pins assignment and enable and verify move
drivers/net/ethernet/intel/ice/ice_ptp.c | 20 ++--
1 file change
Instead of having separate PTP GPIO implementation for E810T, use
existing one from all other products.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
V1 -> V2: restored blank line and moved enable and verify assignment
drivers/net/ethernet/intel/ice/ice_gnss.c | 4 +
Cache original PTP GPIO requests instead of saving each parameter in
internal structures for periodic output or external timestamp request.
Factor out all periodic output register writes from ice_ptp_cfg_clkout
to a separate function to improve readability.
Reviewed-by: Arkadiusz Kubalewski
Sign
When setting a new supported function for a pin on E810, disable other
enabled pin that shares the same GPIO.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
V1 -> V2: Fixed incorrect call to ice_ptp_set_sma_cfg_e810t()
drivers/net/ethernet/intel/ice/ice_ptp.c | 65 ++
From: Yochai Hagvi
PTP pins assignment and their related SDPs (Software Definable Pins) are
currently hardcoded.
Fix that by reading NVM section instead on products supporting this,
which are E810 products.
If SDP section is not defined in NVM, the driver continues to use the
hardcoded table.
Re
From: Sergey Temerkhanov
Implement configuring 1PPS signal output from CGU. Use maximal amplitude
because Linux PTP pin API does not have any way for user to set signal
level.
This change is necessary for E825C products to properly output any
signal from 1PPS pin.
Reviewed-by: Arkadiusz Kubalew
Add specific functions and definitions for E830 devices to enable
PTP support.
Refactor processing of timestamping interrupt, cross timestamping, and
remove usage of ice_is_e8xx() functions to avoid code redundancy.
Refactor GNSS presence check to be able to remove ice_is_e8xx()
functions.
Jacob
Don't check if the device type is E810T as non-E810T devices can support
GNSS too and PCA9575 check is enough to determine if GNSS is present or
not.
Rename ice_gnss_is_gps_present() to ice_gnss_is_module_present()
because GNSS module supports multiple GNSS providers, not only GPS.
Move functions
Instead of using shifts and casts, use FIELD_PREP after reading 40b
timestamp values.
Reviewed-by: Simon Horman
Signed-off-by: Karol Kolacinski
---
V5 -> V6: Replaced removed macros with the new ones
drivers/net/ethernet/intel/ice/ice_ptp_hw.c | 9 ++---
drivers/net/ethernet/intel/ice/ice
Simplify TSYN IRQ processing by moving it to a separate function and
having appropriate behavior per PHY model, instead of multiple
conditions not related to HW, but to specific timestamping modes.
When PTP is not enabled in the kernel, don't process timestamps and
return IRQ_HANDLED.
Reviewed-by
Remove unnecessary ice_is_e8xx() functions and PHY model. Instead, use
MAC type where applicable.
Don't check device type in ice_ptp_maybe_trigger_tx_interrupt(), because
in reality it depends on the ready bitmap, which only E810 does not
have.
Call ice_ptp_cfg_phy_interrupt() unconditionally, be
From: Jacob Keller
Devices supported by ice driver use essentially the same logic for
performing a crosstimestamp. The only difference is that E830 hardware
has different offsets. Instead of having multiple implementations,
combine them into a single ice_capture_crosststamp() function.
To suppor
Unify ice_ptp_init_tx_* functions for most of the MAC types except E82X.
This simplifies the code for the future use with new MAC types.
Reviewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Renamed the patch and reworded the commit message
drivers/net/ethernet/intel/ice/i
From: Michal Michalik
Add specific functions and definitions for E830 devices to enable
PTP support.
E830 devices support direct write to GLTSYN_ registers without shadow
registers and 64 bit read of PHC time.
Enable PTM for E830 device, which is required for cross timestamp and
and dependency
> -Original Message-
> From: Intel-wired-lan On Behalf Of
> Martyna Szapar-Mudlaw
> Sent: Wednesday, June 26, 2024 3:14 PM
> To: intel-wired-...@lists.osuosl.org
> Cc: Martyna Szapar-Mudlaw ; Matěj
> Grégr ; Kitszel, Przemyslaw
> Subject: [Intel-wired-lan] [PATCH iwl-net] ice: Fix lldp
> -Original Message-
> From: Intel-wired-lan On Behalf Of
> Przemek Kitszel
> Sent: Wednesday, August 21, 2024 7:07 PM
> To: intel-wired-...@lists.osuosl.org; Jiri Pirko ; Nguyen,
> Anthony L
> Cc: lukas.bulw...@gmail.com; will...@google.com; Drewek, Wojciech
> ; dwaipayanr...@gmail.co
> -Original Message-
> From: Intel-wired-lan On Behalf Of
> Przemek Kitszel
> Sent: Wednesday, August 21, 2024 7:07 PM
> To: intel-wired-...@lists.osuosl.org; Jiri Pirko ; Nguyen,
> Anthony L
> Cc: lukas.bulw...@gmail.com; will...@google.com; dwaipayanr...@gmail.com;
> net...@vger.kern
> -Original Message-
> From: Intel-wired-lan On Behalf Of
> Przemek Kitszel
> Sent: Wednesday, August 21, 2024 7:07 PM
> To: intel-wired-...@lists.osuosl.org; Jiri Pirko ; Nguyen,
> Anthony L
> Cc: lukas.bulw...@gmail.com; will...@google.com; Drewek, Wojciech
> ; dwaipayanr...@gmail.co
> -Original Message-
> From: Intel-wired-lan On Behalf Of
> Przemek Kitszel
> Sent: Wednesday, August 21, 2024 7:07 PM
> To: intel-wired-...@lists.osuosl.org; Jiri Pirko ; Nguyen,
> Anthony L
> Cc: lukas.bulw...@gmail.com; will...@google.com; Drewek, Wojciech
> ; dwaipayanr...@gmail.co
> -Original Message-
> From: Intel-wired-lan On Behalf Of
> Przemek Kitszel
> Sent: Wednesday, August 21, 2024 7:07 PM
> To: intel-wired-...@lists.osuosl.org; Jiri Pirko ; Nguyen,
> Anthony L
> Cc: lukas.bulw...@gmail.com; will...@google.com; Drewek, Wojciech
> ; dwaipayanr...@gmail.co
We have a plurality of shaping-related drivers API, but none flexible
enough to meet existing demand from vendors[1].
This series introduces new device APIs to configure in a flexible way
TX H/W shaping. The new functionalities are exposed via a newly
defined generic netlink interface and include
Define the user-space visible interface to query, configure and delete
network shapers via yaml definition.
Add dummy implementations for the relevant NL callbacks.
set() and delete() operations touch a single shaper creating/updating or
deleting it.
The group() operation creates a shaper's group
Introduce the basic infrastructure to implement the net-shaper
core functionality. Each network devices carries a net-shaper cache,
the NL get() operation fetches the data from such cache.
The cache is initially empty, will be fill by the set()/group()
operation implemented later and is destroyed
Both NL operations directly map on the homonymous device shaper
callbacks, update accordingly the shapers cache and are serialized
via a per device lock.
Implement the cache modification helpers to additionally deal with
NODE scope shaper. That will be needed by the group() operation
implemented in
Allow grouping multiple leaves shaper under the given root.
The root and the leaves shapers are created, if needed, otherwise
the existing shapers are re-linked as requested.
Try hard to pre-allocated the needed resources, to avoid non
trivial H/W configuration rollbacks in case of any failure.
S
Leverage the previously introduced group operation to implement
the removal of NODE scope shaper, re-linking its leaves under the
the parent node before actually deleting the specified NODE scope
shaper.
Signed-off-by: Paolo Abeni
---
v4 -> v5:
- replace net_device* with binding* in most helpers
Allow the user-space to fine-grain query the shaping features
supported by the NIC on each domain.
Signed-off-by: Paolo Abeni
---
v4 -> v5:
- added pre/post helpers for dump op
---
Documentation/netlink/specs/net_shaper.yaml | 88 +
include/uapi/linux/net_shaper.h
The netlink op is a simple wrapper around the device callback.
Extend the existing fetch_dev() helper adding an attribute argument
for the requested device. Reuse such helper in the newly implemented
operation.
Signed-off-by: Paolo Abeni
---
v4 -> v5:
- replace net_device* with binding* in most
Leverage a basic/dummy netdevsim implementation to do functional
coverage for NL interface.
Signed-off-by: Paolo Abeni
---
v4 -> v5:
- updated to new driver API
- more consistent indentation
rfc v1 -> v2:
- added more test-cases WRT nesting and grouping
---
drivers/net/Kconfig
From: Wenjun Wu
This patch adds new virtchnl opcodes and structures for rate limit
and quanta size configuration, which include:
1. VIRTCHNL_OP_CONFIG_QUEUE_BW, to configure max bandwidth for each
VF per queue.
2. VIRTCHNL_OP_CONFIG_QUANTA, to configure quanta size per queue.
3. VIRTCHNL_OP_GET_Q
From: Wenjun Wu
Add support to configure VF queue rate limit and quanta size.
For quanta size configuration, the quanta profiles are divided evenly
by PF numbers. For each port, the first quanta profile is reserved for
default. When VF is asked to set queue quanta size, PF will search for
an ava
From: Sudheer Mogilappagari
Implement net_shaper_ops support for IAVF. This enables configuration
of rate limiting on per queue basis. Customer intends to enforce
bandwidth limit on Tx traffic steered to the queue by configuring
rate limits on the queue.
To set rate limiting for a queue, update
From: Sudheer Mogilappagari
During driver initialization VF determines QOS capability is allowed
by PF and receives QOS parameters. After which quanta size for queues
is configured which is not configurable and is set to 1KB currently.
Signed-off-by: Sudheer Mogilappagari
---
drivers/net/ether
Hi,
On Wed, 2024-08-28 at 15:03 +0200, Przemek Kitszel wrote:
> Our driver uses devres to manage resources, in particular we call
> pcim_enable_device(), which recently has registered
> pcim_disable_device()
> as device remove action
That's not the exact cause, actually.
The ultimate call to pci
On 8/26/2024 11:10 AM, Manoj Vishwanathan wrote:
The transaction salt was being accessed before acquiring the
idpf_vc_xn_lock when idpf has to forward the virtchnl reply.
Fixes: 34c21fa894a1a (“idpf: implement virtchnl transaction manager”)
Signed-off-by: Manoj Vishwanathan
Reviewed-by: Pa
On 8/26/2024 11:10 AM, Manoj Vishwanathan wrote:
From: Marco Leogrande
When a workqueue is created with `WQ_UNBOUND`, its work items are
served by special worker-pools, whose host workers are not bound to
any specific CPU. In the default configuration (i.e. when
`queue_delayed_work` and frie
On 8/26/2024 11:10 AM, Manoj Vishwanathan wrote:
Add more information related to the transaction like cookie, vc_op,
salt when transaction times out and include similar information
when transaction salt does not match.
Info output for transaction timeout:
---
(op:5015 cookie:4
13.2.0
arc allmodconfig gcc-13.2.0
arc allnoconfig gcc-13.2.0
arc allyesconfig gcc-13.2.0
arc defconfig gcc-13.2.0
arc randconfig-001-20240829 gcc-
Call rtnl_unlock() on this error path, before returning.
Fixes: bc23aa949aeb ("igc: Add pcie error handler support")
Signed-off-by: Dan Carpenter
---
drivers/net/ethernet/intel/igc/igc_main.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/ethernet/intel/igc/igc_main.c
b/drivers
On 8/26/2024 11:10 AM, Manoj Vishwanathan wrote:
IDPF Virtchnl: Enhance error reporting & fix locking/workqueue issues
This patch series addresses several IDPF virtchnl issues:
How are you sending these patches? Are you sending it all in one
command/send? The threading is not showing up co
On 8/26/2024 10:39 AM, Paul Greenwalt wrote:
E830 supports generic receive and HW_CSUM transmit checksumming.
Generic receive checksum support is provided by hardware calculating the
checksum over the whole packet and providing it to the driver in the Rx
flex descriptor. Then the driver assig
On Thu, 29 Aug 2024 17:16:55 +0200 Paolo Abeni wrote:
> + xa_for_each_range(&data->shapers, index, shaper, ctx->start_index,
> + U32_MAX) {
> + net_shaper_index_to_handle(index, &handle);
> + ret = net_shaper_fill_one(skb, binding, &handle, shaper,
On Thu, 29 Aug 2024 17:16:55 +0200 Paolo Abeni wrote:
> +static int net_shaper_fill_handle(struct sk_buff *msg,
> + const struct net_shaper_handle *handle,
> + u32 type)
> +{
> + struct nlattr *handle_attr;
> +
> + if (handle->scop
On Thu, 29 Aug 2024 17:16:56 +0200 Paolo Abeni wrote:
> ithe next patch and will be implemented later in the series.
s/ithe/the/
> diff --git a/net/shaper/shaper.c b/net/shaper/shaper.c
> index 2ed80df25765..a58bdd2ec013 100644
> --- a/net/shaper/shaper.c
> +++ b/net/shaper/shaper.c
> @@ -23,6 +2
On Thu, 29 Aug 2024 17:17:04 +0200 Paolo Abeni wrote:
> +static int iavf_verify_handle(struct net_shaper_binding *binding,
> + const struct net_shaper_handle *handle,
> + struct netlink_ext_ack *extack)
> +{
> + struct iavf_adapter *adapter =
On Thu, 29 Aug 2024 17:16:57 +0200 Paolo Abeni wrote:
> Allow grouping multiple leaves shaper under the given root.
> The root and the leaves shapers are created, if needed, otherwise
> the existing shapers are re-linked as requested.
>
> Try hard to pre-allocated the needed resources, to avoid no
On Thu, 29 Aug 2024 17:17:00 +0200 Paolo Abeni wrote:
> The netlink op is a simple wrapper around the device callback.
>
> Extend the existing fetch_dev() helper adding an attribute argument
> for the requested device. Reuse such helper in the newly implemented
> operation.
It's not just for int
tree/branch:
https://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue.git dev-queue
branch HEAD: 1d27028dacb9fdd63de4a7cc819b7dc04b29928f ice: fix BST key index
in ice_bst_key_init()
elapsed time: 1790m
configs tested: 112
configs skipped: 5
The following configs have been built succe
On 8/28/24 23:29, Jacob Keller wrote:
On 8/26/2024 11:10 AM, Manoj Vishwanathan wrote:
The transaction salt was being accessed before acquiring the
idpf_vc_xn_lock when idpf has to forward the virtchnl reply.
Fixes: 34c21fa894a1a (“idpf: implement virtchnl transaction manager”)
Signed-off-by:
On 8/29/24 09:11, Philipp Stanner wrote:
Hi,
On Wed, 2024-08-28 at 15:03 +0200, Przemek Kitszel wrote:
Our driver uses devres to manage resources, in particular we call
pcim_enable_device(), which recently has registered
pcim_disable_device()
as device remove action
That's not the exact cause
53 matches
Mail list logo