From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id A0579462A7 for ; Mon, 24 Feb 2025 09:02:12 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2380540299; Mon, 24 Feb 2025 09:02:12 +0100 (CET) Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2091.outbound.protection.outlook.com [40.107.244.91]) by mails.dpdk.org (Postfix) with ESMTP id BD9E740299 for ; Mon, 24 Feb 2025 09:02:09 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Hm63vkjZlZ4hidVgtjuPACU42BCdUoqsJiTzQUyusnVi6ngLY1BGjQf9VQvom2ZKXa0heQvOceSDrFrQZ67gaqbeJ7+UM9QHZ3SvW4QHLVVRbGeZTd5ymb0Duhtw4gfg2w44b9ImN20zOoR0gAFF/SBx6Ge3FbUYLC8QC9yyc6SaH6qqiBeM9Z8L23rVknYQfaRoBdU9d6L0SxEn8yJ+gVzZFnQIj3G71CKB/h3w9aepan7JU+unBrdlOy3SpHGETX4+RXuQSz8R5ALSgBV8NP8q9Nyw0hZr0g5kU4iNwN6GUI+mnDEDL17csFaTJamcWc+/pgNNkR5QB1/2ObpyVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=dPln8dV5rtze0Dcjcyi8QL98FReWt7oVPhLpFbA86mk=; b=CFhl8FvU1vBgcA+Sv6MGNrKTRea5H+szvErfWV45WZu4UQj88XAv8zxIV1rjUZ4uRZ9efPE/TyqknIef9JhkDxeLWl2d5CBBgmQmGdRtqkgdbd+IZIpsZiHBBxtNh3dkkp1+mIbGAXU/+qB0LrjffK46PwMWwX37cdb4DjqVDjWVTTMLpZLm1do9rxFZTYHhKdEwWzFWigXVIjUN3ji3n/SkPGRDqXTgHqfWGxkmYW7Gcx447qeoS0TQzJze358u3sjoN8nShKBNYLGBrrePVPoYnR0C5I3A5vejq+pXKfmGycIpProgsXlTZPh0WiANC1o7KwHjlvGruN5M3hhyLA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=corigine.com; dmarc=pass action=none header.from=corigine.com; dkim=pass header.d=corigine.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=corigine.onmicrosoft.com; s=selector2-corigine-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=dPln8dV5rtze0Dcjcyi8QL98FReWt7oVPhLpFbA86mk=; b=kGndDqLmX/qcN7dQGA3tqf78fzF3OCJPjKXhRinKUj59e5kEwifURY8qVvevV1eFCd++qk4UCtsygmY8Ek2q1+yUkVfX7uKVVo21PxYO5mEOcDE8S86FKa4ro+zVW/HpOcAWRo4fjXrFxNhxapWdm629JEF1YX7gTCF4oEpG+Ts= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=corigine.com; Received: from SJ0PR13MB5545.namprd13.prod.outlook.com (2603:10b6:a03:424::5) by DM6PR13MB3675.namprd13.prod.outlook.com (2603:10b6:5:1::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8466.20; Mon, 24 Feb 2025 08:02:06 +0000 Received: from SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::b900:5f05:766f:833]) by SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::b900:5f05:766f:833%4]) with mapi id 15.20.8466.016; Mon, 24 Feb 2025 08:02:05 +0000 From: Chaoyong He To: stable@dpdk.org Cc: oss-drivers@corigine.com, Long Wu , Chaoyong He Subject: [PATCH 23.11] net/nfp: fix VF link speed problem Date: Mon, 24 Feb 2025 16:01:42 +0800 Message-ID: <20250224080142.436542-1-chaoyong.he@corigine.com> X-Mailer: git-send-email 2.43.5 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: SI2PR01CA0029.apcprd01.prod.exchangelabs.com (2603:1096:4:192::8) To SJ0PR13MB5545.namprd13.prod.outlook.com (2603:10b6:a03:424::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR13MB5545:EE_|DM6PR13MB3675:EE_ X-MS-Office365-Filtering-Correlation-Id: 051aedc1-21fd-47d0-c475-08dd54a9874b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|52116014|1800799024|376014|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?Dmtq90PQ9IU+mJIil7nMwAdEhh7GY94FsMi0+Z3jeGtJmpoaxfHCvs/3Iuf7?= =?us-ascii?Q?tGjZUeIonIXKJ20IjQ/76J8RHDVJ6+7Xj9IR9agnMI3lMziI0yy2vtKgMgvu?= =?us-ascii?Q?M+JcZwBhf3b8oKEiHLBqwcADGsyrhrqL7/k+HbuAdQYOXz2DZ2x17+hhAxXe?= =?us-ascii?Q?SwuEL+MFkNHkWHaZ7Ds+SCBIZy20aO0cNWsw1ZpXOLg5OJKtr1JNBa056mMt?= =?us-ascii?Q?rkZEnA5u6jR7KxcvzeerNwqqVrLJfFLG0trElrA36Dtbw6RFKPszNpDNZ6Q2?= =?us-ascii?Q?PapXii/C4yq2Vl5SDiLH+fHMDFo9xCPiYLYCG6IgTYmdjqk35HNWCV3QjMIC?= =?us-ascii?Q?ugf7FUo2YRRMxQHdOO800lSwSXgpGI/ThCul9nsZkRbOFAGD712Rk70GvLJ0?= =?us-ascii?Q?r3zEW9A1Z2GI1buTEAXHQ135UV7HnkfzUDIePrD14fDLs0sIBYzGJ1l9T+4I?= =?us-ascii?Q?LnBMBtuAWFgCDIihGE+vGr0WJmWUb/CinvaKHXkWDlSgYAiZC87iDcVNqkIn?= =?us-ascii?Q?438xCm0r6DvkrqmDCC8eRPzW7/B2Fy5nMZhWFwWHvcHJKhqp1fKA5hX14aWI?= =?us-ascii?Q?4KxAz5hwaTBqklKWwXq2i3Rp0jVHjIUKE03+064b4uhdgj9OgPu1RFmP7THk?= =?us-ascii?Q?dAuepcd9l/X+0dukPyhFrx/lM6CO8JNP77iOUW7K4238K+0J7vZ4jU/O2q1x?= =?us-ascii?Q?sY2PD6zuJh6hnCDv7ufR3j2oGytJLDEwNMfA8YrVJOUZ0fjE+BRLMNB02D9H?= =?us-ascii?Q?XQT3OTt2LsaCEACiBsZRVmWR9IT/T12X/18STuHnO0uctfMsOULws0IpR7OD?= =?us-ascii?Q?iM7zM0Wy61XZLVeq3YEsRJJRx0Z4PK5Jn9GmEzSZ/X2EOadpe94z45xDt9M0?= =?us-ascii?Q?uplhyEJmie0ic+QXAeltS9jmakB8DWDyeyb2v15W58gbU7zsevo267NvzBmC?= =?us-ascii?Q?op22th+br6Geq9m1cf7iqWgUYgsRzCZhV+aP00/sKfjMB3x7S132+HyKMxYO?= =?us-ascii?Q?dIhTS9c1HbjVi0+SN0G2wHzNbNjHHENrBoNC1njdKk+vO4h5whUR71l7xLcE?= =?us-ascii?Q?vHv31xc+5w/lWliKBY+q3BBpPrvAdop2wnIPleFGBWzz3Q2vtF6PSoBYeYRI?= =?us-ascii?Q?KW2n+RfYSERnV8/IUPDe1oIk/0S6Y82WsuuARcl/kF9hfU/p27nvnqdkmRBG?= =?us-ascii?Q?SM5V07YWHX5TEx3nZr9+Rxu0XL/f1mu9H30pQbgnzwKjY7qP8dVX+JgtjUXF?= =?us-ascii?Q?pDnRMl/X2xI8sRXsXhC6nWGX/14lp8uqyGAZ8FYZTvc0x4PMJpm++oPLWt5h?= =?us-ascii?Q?dzll6mqWZF050u9tTC0XVL8jKd+22F22JqgDkAfYiW59rnpMJVr2sWGXYGJZ?= =?us-ascii?Q?LVuPx9RLYobQhYb+4LNPtz7M19gMIQpoRQi9ay485YMCUOXF6zTf0jmvrlDh?= =?us-ascii?Q?KR7zg429oMwRUUYuuq1F6rCLR5xr3tN6?= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SJ0PR13MB5545.namprd13.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(52116014)(1800799024)(376014)(38350700014); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?bFEkbwBCHzkLY9iGO+iUhBbLA2G/n4pVrG0xfoH9CM8GRkNfa3WKcYQLEV3E?= =?us-ascii?Q?S/JTyDZPlt2DoFJBpqm0TKwgiL39Y6D4rmLLbDDmoD3oMLD2SyIV0L/xu684?= =?us-ascii?Q?I9ZiiEjpUV4h2UYXbmaanjggSXM6Obc+LrZn5W0GXsCQnj5OyNMighznAhig?= =?us-ascii?Q?xqrunfTS8mYPwo7NrJBThiGReRRvSEqom1WFwZ/HB7DTkHU2sJbqjlJEyqV7?= =?us-ascii?Q?RcZGYkSx3YWgjwqZJiQDx25TiOkwlg1epqLdzamGA8yFNbi4Em2EVZIdMOOX?= =?us-ascii?Q?nDbTpH8wwpe4tj/pSaswb8xWdtWDP8ow0ppuFFwuu02GCIml44dnVeqRcoUQ?= =?us-ascii?Q?d8G8poaxjBF0yGhMCjwyFVH9c1W2nJyEDmN5ZqwJDDkYfLMY+uuyIIEdmcg9?= =?us-ascii?Q?Twia+KXx0TeE6mAW8B6B7CXCpqExLQfl/eMhQn+7T9W+SDSgdAWgdRb6SX1u?= =?us-ascii?Q?wfH+nJUtFjWE5ehrPbl/Yac4gtaV51b6JhXRoYTpAa6vfcU+IkOtpgIryUgc?= =?us-ascii?Q?Nja3KVwmaIFN3xgZV869jFmULzcMY+WTHOhpb1nA3MLgvotz4QclWdHNRdOo?= =?us-ascii?Q?rZGdjq+j7I4TIGsFCXdsqow+uCywIaWKqolf2rS2g5MLJZAqip5BP0w8TOJF?= =?us-ascii?Q?UeZpfoZmzwdoB0/vYWO+MTS/9wAsNH+g/8rPCNdTYJeS7qvR+fQwkMgpZo8b?= =?us-ascii?Q?oXFQnMEi6LhAK0v7u97jRSQbeKliLq7GiBFa+SGMI4MIoynwmVf/qjKoyKuV?= =?us-ascii?Q?GOQ6AiwgHM6H+v1V3SCsorID+ZY+Q7tPp7kRCnG6jqKawKclBgOWuVlXIuKx?= =?us-ascii?Q?DP6c2nFbbBFSxmJJz2lSwE0Zk30Fh3zdomFVAzQjXgKCr6rN0EBP0EHKK3wS?= =?us-ascii?Q?Xb85u1V+Vj13Xu95jI4EOJxvUCHMC459dnGnnV13B8QXAADwu41sdF0ploXZ?= =?us-ascii?Q?O0gssJSIPCyco8pFY3vRnAdJOzqZ71Wlegz3uIwssnx/uuSbRRZrQBO+xT/I?= =?us-ascii?Q?WlrII++Z1LSiqjSV0lMobqbesBWIQW0JX2FdCRNt+Z0WSltuSKUkPxEoAzsI?= =?us-ascii?Q?AZmwcVYVgPRenuEZVqY1JDrGu9vS0nBdfZzNWZV7Y0HAGmfC1SWyrNGObHYB?= =?us-ascii?Q?NUiu0+Jjoi0cjyw4AZuJMooeKrAMvxAepmS66OApEjplfh9/H62BXXA5mO12?= =?us-ascii?Q?qFg416+wSlqtQW8NYDHroiYE9VE2FP6P2lglp5aJ9zC5qx/HT47a3hMClzDJ?= =?us-ascii?Q?Vjpb0Eallhf4HgyC6g2kpXk7UQP35sGaA+aEYNFuJSq8TDKFFVBErP6I32+J?= =?us-ascii?Q?yREZI5i5FxYXiTdN9ELpZ1WtqbHbYPBaa4wpj3715xZpcvktPFzmT18GFMdS?= =?us-ascii?Q?m5YefJlkoowwIc2NtvnJDnlbEMVdMcs786ITjjbcNw37awzQLlbaDKzPwSGa?= =?us-ascii?Q?jor4KKXhdDHZE5d9gi+spt+RtaJzcN5b2HyyGjSecD7c7dL9n088W5V9RuBK?= =?us-ascii?Q?Zq1NG6iWWTI0DOue6hPrvayHEN+T7hpupb/a9hC3m7gLv01X91BtyRvh4/uC?= =?us-ascii?Q?bV7vJRWxR/dIkmVw49FoMjYviEd6EqPpx1z6zrrDVoFP28b/kt85ze6moZh/?= =?us-ascii?Q?9Q=3D=3D?= X-OriginatorOrg: corigine.com X-MS-Exchange-CrossTenant-Network-Message-Id: 051aedc1-21fd-47d0-c475-08dd54a9874b X-MS-Exchange-CrossTenant-AuthSource: SJ0PR13MB5545.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Feb 2025 08:02:05.5617 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: fe128f2c-073b-4c20-818e-7246a585940c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 0tPm7z4cFmORIObBj0RPGjwwEJxDJceHcQ86o5hFZYOy3oN+DyIZ47R9sWtRsjgPIIYBwF2+8rnPqh2jHyMHkBAEvHLKCkgaexkzhivzx6c= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR13MB3675 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org From: Long Wu [ upstream commit c43d2aab426bdc6e22142b4c5667d6d1634248de ] The previous logic does not update the 'rte_eth_device' link status when the port link status changed, which cause the firmware won't be notified by the PMD. Furthermore, the physical representor port should also notify firmware its current speed with multi-pf firmware. Fix these problems by modify the related logic, also add needed helper function at the same time. Fixes: eae7dadbe987 ("net/nfp: update link status reporting") Signed-off-by: Long Wu Reviewed-by: Chaoyong He --- drivers/net/nfp/flower/nfp_flower_ctrl.c | 14 ++++++++++++++ drivers/net/nfp/flower/nfp_flower_representor.c | 2 +- drivers/net/nfp/flower/nfp_flower_representor.h | 2 ++ 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/drivers/net/nfp/flower/nfp_flower_ctrl.c b/drivers/net/nfp/flower/nfp_flower_ctrl.c index 102daa3d70..574e4fa056 100644 --- a/drivers/net/nfp/flower/nfp_flower_ctrl.c +++ b/drivers/net/nfp/flower/nfp_flower_ctrl.c @@ -419,6 +419,8 @@ nfp_flower_cmsg_port_mod_rx(struct nfp_app_fw_flower *app_fw_flower, struct rte_mbuf *pkt_burst) { uint32_t port; + uint16_t link_status; + struct rte_eth_dev *eth_dev; struct nfp_flower_representor *repr; struct nfp_flower_cmsg_port_mod *msg; @@ -447,11 +449,23 @@ nfp_flower_cmsg_port_mod_rx(struct nfp_app_fw_flower *app_fw_flower, } repr->link.link_duplex = RTE_ETH_LINK_FULL_DUPLEX; + + link_status = repr->link.link_status; if ((msg->info & NFP_FLOWER_CMSG_PORT_MOD_INFO_LINK) != 0) repr->link.link_status = RTE_ETH_LINK_UP; else repr->link.link_status = RTE_ETH_LINK_DOWN; + if (link_status != repr->link.link_status) { + eth_dev = rte_eth_dev_get_by_name(repr->name); + if (eth_dev == NULL) { + PMD_DRV_LOG(ERR, "Can not get ethernet device by name %s.", repr->name); + return -EINVAL; + } + + nfp_flower_repr_link_update(eth_dev, 0); + } + return 0; } diff --git a/drivers/net/nfp/flower/nfp_flower_representor.c b/drivers/net/nfp/flower/nfp_flower_representor.c index ada28d07c6..a86b6bb580 100644 --- a/drivers/net/nfp/flower/nfp_flower_representor.c +++ b/drivers/net/nfp/flower/nfp_flower_representor.c @@ -18,7 +18,7 @@ enum nfp_repr_type { NFP_REPR_TYPE_MAX, /*<< Number of representor types */ }; -static int +int nfp_flower_repr_link_update(struct rte_eth_dev *dev, __rte_unused int wait_to_complete) { diff --git a/drivers/net/nfp/flower/nfp_flower_representor.h b/drivers/net/nfp/flower/nfp_flower_representor.h index 8053617562..ea912ddcd4 100644 --- a/drivers/net/nfp/flower/nfp_flower_representor.h +++ b/drivers/net/nfp/flower/nfp_flower_representor.h @@ -24,5 +24,7 @@ struct nfp_flower_representor { }; int nfp_flower_repr_create(struct nfp_app_fw_flower *app_fw_flower); +int nfp_flower_repr_link_update(struct rte_eth_dev *dev, + __rte_unused int wait_to_complete); #endif /* __NFP_FLOWER_REPRESENTOR_H__ */ -- 2.43.5