From patchwork Fri Jun 9 21:16:16 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Ertman, David M" X-Patchwork-Id: 13274562 Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net [23.128.96.19]) (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 9CD9B408CE for ; Fri, 9 Jun 2023 21:14:49 +0000 (UTC) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0AD1C35A2 for ; Fri, 9 Jun 2023 14:14:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686345288; x=1717881288; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=HE1En9fMHWA5auIXkIDZPWVLYsvZa/ipTFl2OoW6SDQ=; b=ikoGcz4vF60zxRXNHMntpK71JhOIeKdDEx0Ytt42dIsr7Jms9pV88dR5 DZAV4m/Y7NpDBjXKb62XhNu9gFrME58aT8kx60g2WIyKEJSrifWUVVL1L BSb2xLJSS/U3PXdaws3jd8yX8RBNIhqEK16xlVSU/08GiCE3zIOOTrOlu scId8gMf15YRvIW19m+JeK7vl26M+Pm1Fo6Goxth+OMkyC4xCg5DrNXq0 hXKHk5kjsmHIwSgR8Jr4/1RdmoTXFEExB/wTCTNQeMdebyvVrFA1iq3E7 us0IqoZw2NrgqDopkXsg4s4CVlkaWXYgNj/O4j/bJKZf9e3GniK4ncpI/ A==; X-IronPort-AV: E=McAfee;i="6600,9927,10736"; a="356583163" X-IronPort-AV: E=Sophos;i="6.00,230,1681196400"; d="scan'208";a="356583163" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jun 2023 14:14:47 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10736"; a="823194625" X-IronPort-AV: E=Sophos;i="6.00,230,1681196400"; d="scan'208";a="823194625" Received: from dmert-dev.jf.intel.com ([10.166.241.14]) by fmsmga002-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jun 2023 14:14:47 -0700 From: Dave Ertman To: intel-wired-lan@lists.osuosl.org Cc: daniel.machon@microchip.com, simon.horman@corigine.com, netdev@vger.kernel.org Subject: [PATCH iwl-next v4 00/10] Implement support for SRIOV + LAG Date: Fri, 9 Jun 2023 14:16:16 -0700 Message-Id: <20230609211626.621968-1-david.m.ertman@intel.com> X-Mailer: git-send-email 2.40.1 Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Implement support for SRIOV VF's on interfaces that are in an aggregate interface. The first interface added into the aggregate will be flagged as the primary interface, and this primary interface will be responsible for managing the VF's resources. VF's created on the primary are the only VFs that will be supported on the aggregate. Only Active-Backup mode will be supported and only aggregates whose primary interface is in switchdev mode will be supported. Additional restrictions on what interfaces can be added to the aggregate and still support SRIOV VFs are: - interfaces have to all be on the same physical NIC - all interfaces have to have the same QoS settings - interfaces have to have the FW LLDP agent disabled - only the primary interface is to be put into switchdev mode - no more than two interfaces in the aggregate Changes since v1: Fix typo in commit message Fix typos in warning messages Fix typo in function header Use correct bitwise operator instead of boolean Changes since v2: Rebase on current next-queue Fix typos in commits Fix typos in function headers use %u for unsigned values in debug message Refactor common code in node moves to subfunction Changes since v3: Fix typos in warning messages move refactor of common code to earlier patch expand use of refactored code move prototype and func call into patch that defines func Dave Ertman (9): ice: Add driver support for firmware changes for LAG ice: changes to the interface with the HW and FW for SRIOV_VF+LAG ice: implement lag netdev event handler ice: process events created by lag netdev event handler ice: Flesh out implementation of support for SRIOV on bonded interface ice: support non-standard teardown of bond interface ice: enforce interface eligibility and add messaging for SRIOV LAG ice: enforce no DCB config changing when in bond ice: update reset path for SRIOV LAG support Jacob Keller (1): ice: Correctly initialize queue context values drivers/net/ethernet/intel/ice/ice.h | 5 + .../net/ethernet/intel/ice/ice_adminq_cmd.h | 53 +- drivers/net/ethernet/intel/ice/ice_common.c | 56 + drivers/net/ethernet/intel/ice/ice_common.h | 4 + drivers/net/ethernet/intel/ice/ice_dcb_nl.c | 50 + drivers/net/ethernet/intel/ice/ice_lag.c | 1812 ++++++++++++++++- drivers/net/ethernet/intel/ice/ice_lag.h | 34 +- drivers/net/ethernet/intel/ice/ice_lib.c | 2 +- drivers/net/ethernet/intel/ice/ice_lib.h | 1 + drivers/net/ethernet/intel/ice/ice_main.c | 26 +- drivers/net/ethernet/intel/ice/ice_sched.c | 37 +- drivers/net/ethernet/intel/ice/ice_sched.h | 21 + drivers/net/ethernet/intel/ice/ice_switch.c | 88 +- drivers/net/ethernet/intel/ice/ice_switch.h | 29 + drivers/net/ethernet/intel/ice/ice_type.h | 2 + drivers/net/ethernet/intel/ice/ice_virtchnl.c | 2 + 16 files changed, 2092 insertions(+), 130 deletions(-)