From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 2C204C67861 for ; Mon, 8 Apr 2024 10:26:26 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id C820F81846; Mon, 8 Apr 2024 10:26:25 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id vQCvoLPwZCbm; Mon, 8 Apr 2024 10:26:25 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.166.34; helo=ash.osuosl.org; envelope-from=intel-wired-lan-bounces@osuosl.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org CD2228186B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=osuosl.org; s=default; t=1712571984; bh=MQ80NtVHkl5lDvmAueFg3PPCR4qNIr69Cy9WTtDDY0A=; h=From:To:Date:Subject:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:Cc:From; b=Y/JaI+aNkOhRLot2ynEDZXLIfqvEMvzOy6htO1+0WBKRxgbBW1N9lgpa2t8QErEZD Z+Ow0Ja9SdAS/lECOvroztZ6xXVcZpxga58DagRd6WRmqLB/1gEkk8bL9IHAiwYlB1 udb0gOXROYfFjCgM0DuxKQfPxoytRvpuThhgP48KRz8XSjZ4Sr7BHtjUt/fJ1IBSKD KIZUDSCqxH+xbx2SkUbKd3+0q3JVYC4K2+B2lOQ/Y8+vVUyV/zdVOOb3EMimE8LO0X fR3jb9BxGtLYKcz0j1xqZeeBcKlTC+r4tBAeIrCBa1MTlPheY4Eue7ibqzzZ0duuZ2 O+XkLvLwOqarw== Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp1.osuosl.org (Postfix) with ESMTP id CD2228186B; Mon, 8 Apr 2024 10:26:24 +0000 (UTC) Received: from smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id 7FFCA1BF3CD for ; Mon, 8 Apr 2024 10:26:23 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id 6A5184072E for ; Mon, 8 Apr 2024 10:26:23 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id sw1m13JHR1q2 for ; Mon, 8 Apr 2024 10:26:22 +0000 (UTC) Received-SPF: None (mailfrom) identity=mailfrom; client-ip=198.175.65.17; helo=mgamail.intel.com; envelope-from=michal.swiatkowski@linux.intel.com; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp4.osuosl.org E34544068A DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org E34544068A Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) by smtp4.osuosl.org (Postfix) with ESMTPS id E34544068A for ; Mon, 8 Apr 2024 10:26:21 +0000 (UTC) X-CSE-ConnectionGUID: LMIHb51BRWSdxOAW6Y6bVw== X-CSE-MsgGUID: /PFdQAIQTFKD9DnUPqWVzw== X-IronPort-AV: E=McAfee;i="6600,9927,11037"; a="7944134" X-IronPort-AV: E=Sophos;i="6.07,186,1708416000"; d="scan'208";a="7944134" Received: from orviesa009.jf.intel.com ([10.64.159.149]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Apr 2024 03:26:21 -0700 X-CSE-ConnectionGUID: UYOmBX1HQaSKSN9pvjyg4Q== X-CSE-MsgGUID: 3NycGAJPQXWdiGWAsUiRiw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,186,1708416000"; d="scan'208";a="19758513" Received: from wasp.igk.intel.com (HELO GK3153-DR2-R750-36946.localdomain.com) ([10.102.20.192]) by orviesa009.jf.intel.com with ESMTP; 08 Apr 2024 03:26:19 -0700 From: Michal Swiatkowski To: intel-wired-lan@lists.osuosl.org Date: Mon, 8 Apr 2024 12:30:42 +0200 Message-ID: <20240408103049.19445-1-michal.swiatkowski@linux.intel.com> X-Mailer: git-send-email 2.42.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1712571982; x=1744107982; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=Kf2hqyDHZa7/128+yQOXUSjbEUjfnRokeYntKuyjo7E=; b=GjgxOtlinhVKyj8604gRg8QxapChtMJDs+DCqlyV88Y5feBJ0e8n7+OW FTL+bCFmBuWVtRIPV/lArDWTgyWrfe+Sz/rGqVx9I5Jd2/Romyry00Ayz d4yh78+bjGPN3IpwnbOVmERwpsVnz6oWxJxAmeO5AqjnkiayTpfIHSwPn E2CnWeoClT0ViqxIyt7rSsutjEDMdW8AeARsYjx9TJKdP4izB7FhOsFlM ET4jS+MW5iiILtKCA9TR+RZIe5vMn52nCUKs8cSndq5/zWZS8XFehLOwM OpGvuYsjjzDcxsmjg9iRm6rmOp9E9hKtW2Fkn2W/00DOltpgYNF/iWb/b A==; X-Mailman-Original-Authentication-Results: smtp4.osuosl.org; dmarc=none (p=none dis=none) header.from=linux.intel.com X-Mailman-Original-Authentication-Results: smtp4.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=GjgxOtli Subject: [Intel-wired-lan] [iwl-next v1 0/7] ice: support devlink subfunction X-BeenThere: intel-wired-lan@osuosl.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel Wired Ethernet Linux Kernel Driver Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Michal Swiatkowski , maciej.fijalkowski@intel.com, sridhar.samudrala@intel.com, nex.sw.ncis.osdt.itp.upstreaming@intel.com, netdev@vger.kernel.org, jiri@nvidia.com, michal.kubiak@intel.com, pio.raczynski@gmail.com, przemyslaw.kitszel@intel.com, jacob.e.keller@intel.com, wojciech.drewek@intel.com Errors-To: intel-wired-lan-bounces@osuosl.org Sender: "Intel-wired-lan" Hi, This is second patchset split from subfunction patchset [1]. Important changes from previous version: * remove unnecessary checks for devlink port type * link correct devlink port to subfunction netdev Follow up patchset with subfunction port representor will be the last patchset for subfunction implementation in ice. It is a little unpleasant to split it like that, because devlink port should be linked with port representor netdev. In this patchset use devlink port without linking it. It will be done correctly in the follow up when subfunction port representor is available. Currently ice driver does not allow creating more than one networking device per physical function. The only way to have more hardware backed netdev is to use SR-IOV. Following patchset adds support for devlink port API. For each new pcisf type port, driver allocates new VSI, configures all resources needed, including dynamically MSIX vectors, program rules and registers new netdev. This series supports only one Tx/Rx queue pair per subfunction. Example commands: devlink port add pci/0000:31:00.1 flavour pcisf pfnum 1 sfnum 1000 devlink port function set pci/0000:31:00.1/1 hw_addr 00:00:00:00:03:14 devlink port function set pci/0000:31:00.1/1 state active devlink port function del pci/0000:31:00.1/1 [1] https://lore.kernel.org/netdev/20240301115414.502097-1-michal.swiatkowski@linux.intel.com/ Piotr Raczynski (7): ice: add new VSI type for subfunctions ice: export ice ndo_ops functions ice: add basic devlink subfunctions support ice: allocate devlink for subfunction ice: base subfunction aux driver ice: implement netdev for subfunction ice: allow to activate and deactivate subfunction drivers/net/ethernet/intel/ice/Makefile | 1 + .../net/ethernet/intel/ice/devlink/devlink.c | 42 +- .../net/ethernet/intel/ice/devlink/devlink.h | 1 + .../ethernet/intel/ice/devlink/devlink_port.c | 512 ++++++++++++++++++ .../ethernet/intel/ice/devlink/devlink_port.h | 37 ++ drivers/net/ethernet/intel/ice/ice.h | 12 + drivers/net/ethernet/intel/ice/ice_base.c | 5 +- drivers/net/ethernet/intel/ice/ice_dcb_lib.c | 1 + drivers/net/ethernet/intel/ice/ice_lib.c | 52 +- drivers/net/ethernet/intel/ice/ice_lib.h | 3 + drivers/net/ethernet/intel/ice/ice_main.c | 66 ++- drivers/net/ethernet/intel/ice/ice_sf_eth.c | 317 +++++++++++ drivers/net/ethernet/intel/ice/ice_sf_eth.h | 33 ++ drivers/net/ethernet/intel/ice/ice_type.h | 1 + drivers/net/ethernet/intel/ice/ice_xsk.c | 2 +- 15 files changed, 1039 insertions(+), 46 deletions(-) create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.c create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.h -- 2.42.0 From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7711D535C8 for ; Mon, 8 Apr 2024 10:26:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.17 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712571983; cv=none; b=rKamBff4Zb8ibcN0xM0JyrkFzeOH0wcceYS50ruJPrlf99rlfK6+GFtRq+pgNG9sv6pD4TA6PXR6Zu+spTGnkL5eJB+OLBUVp9WTPWFdZe2dG5VPvdTXBt1AVY56vGtDZVy19FHq38RSOou8w4oltpBwcliW2Ym9j4NiK93/1j0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712571983; c=relaxed/simple; bh=Kf2hqyDHZa7/128+yQOXUSjbEUjfnRokeYntKuyjo7E=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=IuNTEp5bwMbFwMOB2XqJzmmWYZubn8cxUlt6wyz0+JXYEO6CfndZ9Yo83jQI/QkbjNUUKVgnI1W7JZeFhowTPc2fqHWm20bXTzxiwVjUnXxAzfrTRSfzCyUCbuO5lKfEVxWg2lSoLpcH/PSjhAgLCh8wTwxvrTaenFsK+h2KKo0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=dqebydTS; arc=none smtp.client-ip=198.175.65.17 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="dqebydTS" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1712571981; x=1744107981; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=Kf2hqyDHZa7/128+yQOXUSjbEUjfnRokeYntKuyjo7E=; b=dqebydTS889fEkTIXkQbz1UVrVuBhdq4g2gZVY4iVf3tEOGPTQ/Q4fz9 pwbSkRKqKZBaxr08EhVmsumuoBqtacm8p6Yi4knZXQ5TiKlTDhgsUq8xu 2qGCQRMcWMgu7TrS+kcXRpoBY6b79wbaQKJSwBv6wqk2GXvLBvnBXoHgg ITDAzAbuIQ0xlxbV4aZ09HEek9UBcGzuynKRN6Hmph+DTgaMAb1K7pJwh fr1HqRNFylHQKMFl8qsFnfKOWy5ZM6Y2G0PGsTYd9lwrbHy7mr8w5STS7 BtWiSFiF1pEbgOW6WyA+SNUzDnvixYYhX8aafdIkVTLQiGQQQjgJXGjrW Q==; X-CSE-ConnectionGUID: 9EPs5ltsQS+BsVzMEhigPw== X-CSE-MsgGUID: giwYVAIcS1CzXw04RN7bzQ== X-IronPort-AV: E=McAfee;i="6600,9927,11037"; a="7944133" X-IronPort-AV: E=Sophos;i="6.07,186,1708416000"; d="scan'208";a="7944133" Received: from orviesa009.jf.intel.com ([10.64.159.149]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Apr 2024 03:26:21 -0700 X-CSE-ConnectionGUID: UYOmBX1HQaSKSN9pvjyg4Q== X-CSE-MsgGUID: 3NycGAJPQXWdiGWAsUiRiw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,186,1708416000"; d="scan'208";a="19758513" Received: from wasp.igk.intel.com (HELO GK3153-DR2-R750-36946.localdomain.com) ([10.102.20.192]) by orviesa009.jf.intel.com with ESMTP; 08 Apr 2024 03:26:19 -0700 From: Michal Swiatkowski To: intel-wired-lan@lists.osuosl.org Cc: netdev@vger.kernel.org, jacob.e.keller@intel.com, michal.kubiak@intel.com, maciej.fijalkowski@intel.com, sridhar.samudrala@intel.com, przemyslaw.kitszel@intel.com, wojciech.drewek@intel.com, pio.raczynski@gmail.com, jiri@nvidia.com, nex.sw.ncis.osdt.itp.upstreaming@intel.com, Michal Swiatkowski Subject: [iwl-next v1 0/7] ice: support devlink subfunction Date: Mon, 8 Apr 2024 12:30:42 +0200 Message-ID: <20240408103049.19445-1-michal.swiatkowski@linux.intel.com> X-Mailer: git-send-email 2.42.0 Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Hi, This is second patchset split from subfunction patchset [1]. Important changes from previous version: * remove unnecessary checks for devlink port type * link correct devlink port to subfunction netdev Follow up patchset with subfunction port representor will be the last patchset for subfunction implementation in ice. It is a little unpleasant to split it like that, because devlink port should be linked with port representor netdev. In this patchset use devlink port without linking it. It will be done correctly in the follow up when subfunction port representor is available. Currently ice driver does not allow creating more than one networking device per physical function. The only way to have more hardware backed netdev is to use SR-IOV. Following patchset adds support for devlink port API. For each new pcisf type port, driver allocates new VSI, configures all resources needed, including dynamically MSIX vectors, program rules and registers new netdev. This series supports only one Tx/Rx queue pair per subfunction. Example commands: devlink port add pci/0000:31:00.1 flavour pcisf pfnum 1 sfnum 1000 devlink port function set pci/0000:31:00.1/1 hw_addr 00:00:00:00:03:14 devlink port function set pci/0000:31:00.1/1 state active devlink port function del pci/0000:31:00.1/1 [1] https://lore.kernel.org/netdev/20240301115414.502097-1-michal.swiatkowski@linux.intel.com/ Piotr Raczynski (7): ice: add new VSI type for subfunctions ice: export ice ndo_ops functions ice: add basic devlink subfunctions support ice: allocate devlink for subfunction ice: base subfunction aux driver ice: implement netdev for subfunction ice: allow to activate and deactivate subfunction drivers/net/ethernet/intel/ice/Makefile | 1 + .../net/ethernet/intel/ice/devlink/devlink.c | 42 +- .../net/ethernet/intel/ice/devlink/devlink.h | 1 + .../ethernet/intel/ice/devlink/devlink_port.c | 512 ++++++++++++++++++ .../ethernet/intel/ice/devlink/devlink_port.h | 37 ++ drivers/net/ethernet/intel/ice/ice.h | 12 + drivers/net/ethernet/intel/ice/ice_base.c | 5 +- drivers/net/ethernet/intel/ice/ice_dcb_lib.c | 1 + drivers/net/ethernet/intel/ice/ice_lib.c | 52 +- drivers/net/ethernet/intel/ice/ice_lib.h | 3 + drivers/net/ethernet/intel/ice/ice_main.c | 66 ++- drivers/net/ethernet/intel/ice/ice_sf_eth.c | 317 +++++++++++ drivers/net/ethernet/intel/ice/ice_sf_eth.h | 33 ++ drivers/net/ethernet/intel/ice/ice_type.h | 1 + drivers/net/ethernet/intel/ice/ice_xsk.c | 2 +- 15 files changed, 1039 insertions(+), 46 deletions(-) create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.c create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.h -- 2.42.0