[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230526102841.2226553-1-jiri@resnulli.us>
Date: Fri, 26 May 2023 12:28:26 +0200
From: Jiri Pirko <jiri@...nulli.us>
To: netdev@...r.kernel.org
Cc: kuba@...nel.org,
pabeni@...hat.com,
davem@...emloft.net,
edumazet@...gle.com,
leon@...nel.org,
saeedm@...dia.com,
moshe@...dia.com,
jesse.brandeburg@...el.com,
anthony.l.nguyen@...el.com,
tariqt@...dia.com,
idosch@...dia.com,
petrm@...dia.com,
simon.horman@...igine.com,
ecree.xilinx@...il.com,
habetsm.xilinx@...il.com,
michal.wilczynski@...el.com,
jacob.e.keller@...el.com
Subject: [patch net-next v2 00/15] devlink: move port ops into separate structure
From: Jiri Pirko <jiri@...dia.com>
In devlink, some of the objects have separate ops registered alongside
with the object itself. Port however have ops in devlink_ops structure.
For drivers what register multiple kinds of ports with different ops
this is not convenient.
This patchset changes does following changes:
1) Introduces devlink_port_ops with functions that allow devlink port
to be registered passing a pointer to driver port ops. (patch #1)
2) Converts drivers to define port_ops and register ports passing the
ops pointer. (patches #2, #3, #4, #6, #8, and #9)
3) Moves ops from devlink_ops struct to devlink_port_ops.
(patches #5, #7, #10-15)
No functional changes.
---
v1->v2:
- see individual patches, there are 2 cosmetical changes basically:
- fixed function names in kdoc comments
- use dummy empty ops in case ops is null
Jiri Pirko (15):
devlink: introduce port ops placeholder
ice: register devlink port for PF with ops
mlxsw_core: register devlink port with ops
nfp: devlink: register devlink port with ops
devlink: move port_split/unsplit() ops into devlink_port_ops
mlx4: register devlink port with ops
devlink: move port_type_set() op into devlink_port_ops
sfc: register devlink port with ops
mlx5: register devlink ports with ops
devlink: move port_fn_hw_addr_get/set() to devlink_port_ops
devlink: move port_fn_roce_get/set() to devlink_port_ops
devlink: move port_fn_migratable_get/set() to devlink_port_ops
devlink: move port_fn_state_get/set() to devlink_port_ops
devlink: move port_del() to devlink_port_ops
devlink: save devlink_port_ops into a variable in
devlink_port_function_validate()
drivers/net/ethernet/intel/ice/ice_devlink.c | 10 +-
drivers/net/ethernet/mellanox/mlx4/main.c | 58 ++---
.../net/ethernet/mellanox/mlx5/core/devlink.c | 9 -
.../mellanox/mlx5/core/esw/devlink_port.c | 29 ++-
.../net/ethernet/mellanox/mlx5/core/eswitch.h | 12 +-
.../mellanox/mlx5/core/eswitch_offloads.c | 12 +-
drivers/net/ethernet/mellanox/mlxsw/core.c | 10 +-
.../net/ethernet/netronome/nfp/nfp_devlink.c | 10 +-
drivers/net/ethernet/sfc/efx_devlink.c | 80 +++---
include/net/devlink.h | 228 +++++++++---------
net/devlink/leftover.c | 119 +++++----
11 files changed, 298 insertions(+), 279 deletions(-)
--
2.39.2
Powered by blists - more mailing lists