From patchwork Tue Jan 16 09:55:31 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Harman Kalra X-Patchwork-Id: 560 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 47DE0438DB; Tue, 16 Jan 2024 10:55:42 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id ED8584029F; Tue, 16 Jan 2024 10:55:41 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id 694744027D for ; Tue, 16 Jan 2024 10:55:40 +0100 (CET) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.17.1.24/8.17.1.24) with ESMTP id 40G8ZUQt021369 for ; Tue, 16 Jan 2024 01:55:39 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-type; s=pfpt0220; bh=ypxFHrJqJMLZaEXIYog+f C11BzPwvb8uFJVa3fk6pMs=; b=EgAwWGVtK4PVVUli5xCGBoGt63J56H4YloXHS Zgr3023fSndik6SkFpXrv2YVtzDvAHYYhgqb2Oo0IDGdMLSzncmyWh4y7UDalhrS nrdPQVz2bImtUq+agxRhLeKzPvydmagLo6QNaC6F83G3ySOwzXns+heGjfwCBrfq pNlbi5fhxAQj+hRzpwz1xKqlzm+erVEJJos6doH0cvgVBgQn+CFXyxK/+qWG5Nzi qcz1O47o0mjkg5CAqP20Ttni11lIgkYAp3b3S78QKh1Yg2aVQmDbWzJcGwvIZMpb Mn3K0l18VDQlfiJeP1ZKxkwd43q89697zfWqX/7wwK0BbqQ9Q== Received: from dc5-exch02.marvell.com ([199.233.59.182]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 3vnpdx87dm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Tue, 16 Jan 2024 01:55:39 -0800 (PST) Received: from DC5-EXCH01.marvell.com (10.69.176.38) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.48; Tue, 16 Jan 2024 01:55:37 -0800 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server id 15.0.1497.48 via Frontend Transport; Tue, 16 Jan 2024 01:55:37 -0800 Received: from localhost.localdomain (unknown [10.29.52.211]) by maili.marvell.com (Postfix) with ESMTP id BD2403F704F; Tue, 16 Jan 2024 01:55:36 -0800 (PST) From: Harman Kalra To: CC: Harman Kalra Subject: [PATCH v3 0/1] multiple representors in one device Date: Tue, 16 Jan 2024 15:25:31 +0530 Message-ID: <20240116095533.40337-1-hkalra@marvell.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20240111064432.193119-1-hkalra@marvell.com> References: <20240111064432.193119-1-hkalra@marvell.com> MIME-Version: 1.0 X-Proofpoint-GUID: MpNuu5y18yjZljTqr7Wo-MerOHVCDylX X-Proofpoint-ORIG-GUID: MpNuu5y18yjZljTqr7Wo-MerOHVCDylX X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.997,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-12-09_02,2023-12-07_01,2023-05-22_02 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Following series adds support to enable creation of multiple representors under one base device. There may be scenarios where port representors for multiple PFs or VFs under PF are required and all these representor ports created under a single pci device. Marvell CNXK port representor solution is designed around this scenario where all representors are backed by a single switch device. Earlier this change was implemented as part of the Marvell CNXK port representor series but after suggestions from Thomas we would like to propose these changes in common code. https://patches.dpdk.org/project/dpdk/patch/20231219174003.72901-25-hkalra@marvell.com/#166785 V3: - Fix duplicate representor devarg key handling logic V2: - Updated the multiple representor devarg pattern to list i.e. representor=[pf[0-1],pf2vf[1,2-3],[4-5]] - Introduced size of array as third argument to rte_eth_devargs_parse() to avoid array corruption - Squashed separate document patch Harman Kalra (1): ethdev: parsing multiple representor devargs string doc/guides/prog_guide/poll_mode_drv.rst | 4 +- .../prog_guide/switch_representation.rst | 1 + drivers/net/bnxt/bnxt_ethdev.c | 4 +- drivers/net/enic/enic_ethdev.c | 4 +- drivers/net/i40e/i40e_ethdev.c | 4 +- drivers/net/ice/ice_dcf_ethdev.c | 4 +- drivers/net/ixgbe/ixgbe_ethdev.c | 4 +- drivers/net/mlx5/linux/mlx5_os.c | 8 +- .../net/nfp/flower/nfp_flower_representor.c | 4 +- drivers/net/sfc/sfc_ethdev.c | 4 +- lib/ethdev/ethdev_driver.c | 105 +++++++++++++++--- lib/ethdev/ethdev_driver.h | 9 +- 12 files changed, 119 insertions(+), 36 deletions(-)