ice: support subfunction devlink Tx topology
authorMichal Swiatkowski <michal.swiatkowski@linux.intel.com>
Tue, 20 Aug 2024 06:57:58 +0000 (08:57 +0200)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Fri, 6 Sep 2024 18:01:24 +0000 (11:01 -0700)
commit7cde47431df52c73ce51287ccacdc572bb3ddd0a
treec4335c9c3090f422dbcb0f1093d716551756087e
parent54f07712395216e1961b1daf8b92f8e76368655d
ice: support subfunction devlink Tx topology

Flow for creating Tx topology is the same as for VF port representors,
but the devlink port is stored in different place (sf->devlink_port).

When creating VF devlink lock isn't taken, when creating subfunction it
is. Setting Tx topology function needs to take this lock, check if it
was taken before to not do it twice.

Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com>
Signed-off-by: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
Tested-by: Rafal Romanowski <rafal.romanowski@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/ice/devlink/devlink.c
drivers/net/ethernet/intel/ice/devlink/devlink_port.c
drivers/net/ethernet/intel/ice/ice_repr.c