From patchwork Mon Jun 5 18:22:48 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: 13267857 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 24EFEAD2E for ; Mon, 5 Jun 2023 18:21:18 +0000 (UTC) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E2CA7D9 for ; Mon, 5 Jun 2023 11:21:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685989276; x=1717525276; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=PC18PsFltwR2GsxT9mIFpq4wqdFbufA/F6ksuBmYKrw=; b=HwasIw49Ag57t9aObgoLFJfWz2Um7vtzkVYZmFW+048b/WNv9lClb1pf HHh2hrggcQSUedwoCzNKQWJy48md6TRTxhEZayCwgbmgo7DW8T2KYcL0t suBOps0kSVqE9jVD5RQYQzt7ZZDc38exbqtOLsmHgjgMY+8e7KUeXhQ57 HlDNkmLxnAvY3jkK64E3leyq64jSlCNLHt0lfV4A3KnYc7jiMdUYyHfLx Ye9UFYUzWuqS3KUj47yj37lPaqfbRMCc4fiOdrcoiW4MqL0Bxvn1tjM8c y3cUDJMedKpnWm67xk/539dcuC10cC7MP8zYrb7H/eNNPzbAaU3iwibWf g==; X-IronPort-AV: E=McAfee;i="6600,9927,10732"; a="358896799" X-IronPort-AV: E=Sophos;i="6.00,218,1681196400"; d="scan'208";a="358896799" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Jun 2023 11:21:16 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10732"; a="1038863356" X-IronPort-AV: E=Sophos;i="6.00,218,1681196400"; d="scan'208";a="1038863356" Received: from dmert-dev.jf.intel.com ([10.166.241.14]) by fmsmga005-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Jun 2023 11:21:15 -0700 From: Dave Ertman To: intel-wired-lan@lists.osuosl.org Cc: netdev@vger.kernel.org Subject: [PATCH net v2 00/10] Implement support for SRIOV + LAG Date: Mon, 5 Jun 2023 11:22:48 -0700 Message-Id: <20230605182258.557933-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, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net X-Patchwork-Delegate: kuba@kernel.org 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 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 | 57 +- 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 | 1912 ++++++++++++++++- 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 | 89 +- 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, 2193 insertions(+), 131 deletions(-)