From patchwork Wed Dec 13 03:24:15 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chaoyong He X-Patchwork-Id: 135104 X-Patchwork-Delegate: ferruh.yigit@amd.com 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 663C1436D9; Wed, 13 Dec 2023 04:25:08 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2861542EAD; Wed, 13 Dec 2023 04:24:47 +0100 (CET) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2122.outbound.protection.outlook.com [40.107.93.122]) by mails.dpdk.org (Postfix) with ESMTP id 6259842EAA for ; Wed, 13 Dec 2023 04:24:45 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VShy/99SolRbG6nVctnC9fLMLkUuEavQO2Gs/bdkXIX+ck0OiwKp90NzzqjJj2idIaqVGu0kyLkTKjO2NnlTs66DA50YmLHTLScbpCCKxDt9713GxEL2WTsOKHdrPWQ9JxmyDCifAlWGwIJrGaUMiVHfRojBr9R+ydh4qDT9As7gPYiGfo963BtBG3NsUo1/ZF9fGmUuvfXjYXq6d1DzJA8R5cnhVOtnz/rv7UaGT/s5E0FGRTPGxA9U5IHM4vOv5zEGmDxPhzJpWwwLuwjivn3STLBpIrhxs7sk4UhPg9jaRyhCNgN3USAIoiKlwyjGqylVY67q50uV0xUCzElQBw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ThdNf5KHcVYED1ewsXXHvTONfrEiSHLzXYgH6sLZlgc=; b=LDTWMPFdEIzWDZAOYstkkV60htSOyinp8TMzOldKCn62OE8V+s7uUlHJ451JTjD+sXUoUgOTFltvpyoTxPeS/BFft5a8DCrsXQJ9yJRMF/mskpWrmporfxdcjJSdBj24pFJLvUEdm51eVlUTGRSBxW4ps66VAENzlvrMaTVrMM2Lr3Cd85M4quXwQg/ztGcjdvy0LUOHXORbHoVuyOC9FA2NxxBbXjKqBALtGcP5lQguNmrjd9lOYTrxlwcnMc2j6+9+fuBckNj7ovwkxC3bISEeXqE1VlpG7jHh6PFRSNOatS0BJNQyN0Fpgta3JAtN15tXhxsAPsB1MWFHGjHKhg== 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=ThdNf5KHcVYED1ewsXXHvTONfrEiSHLzXYgH6sLZlgc=; b=jnfEE2CnCPnoJIJVt6/sK5hmYZ1s1FlDTpcDZjnQ/Ug2yqEJ4FVucrrNfXUUPOsUAV5gt4FFVObTGg20m8386Gh+YRwmVxehyiA7e+ywWKyZseRO5bCnn42hmZfxF+LmyjWXDQDe2HOKy6O8AtVp+2TPv0Aq3JUdEPIINjThiHM= 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 SA3PR13MB6259.namprd13.prod.outlook.com (2603:10b6:806:2f3::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7068.33; Wed, 13 Dec 2023 03:24:43 +0000 Received: from SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::45b3:d83c:cff2:4a1b]) by SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::45b3:d83c:cff2:4a1b%6]) with mapi id 15.20.7091.022; Wed, 13 Dec 2023 03:24:43 +0000 From: Chaoyong He To: dev@dpdk.org Cc: oss-drivers@corigine.com, Chaoyong He , Peng Zhang , Long Wu Subject: [PATCH 4/5] net/nfp: use ctrl to check the mode of features Date: Wed, 13 Dec 2023 11:24:15 +0800 Message-Id: <20231213032416.1988817-5-chaoyong.he@corigine.com> X-Mailer: git-send-email 2.39.1 In-Reply-To: <20231213032416.1988817-1-chaoyong.he@corigine.com> References: <20231213032416.1988817-1-chaoyong.he@corigine.com> X-ClientProxiedBy: SJ0PR03CA0351.namprd03.prod.outlook.com (2603:10b6:a03:39c::26) To SJ0PR13MB5545.namprd13.prod.outlook.com (2603:10b6:a03:424::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR13MB5545:EE_|SA3PR13MB6259:EE_ X-MS-Office365-Filtering-Correlation-Id: 93311fd4-22b5-44f9-8e65-08dbfb8b0ca1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nYDmMNm0qT7VTS84XTpF3qiu99srNXE99wMhbI9Ysm3hurjOW9U8qCbFFYDFv5bKH9iz6lbD0r+jO74sB79WveN3GhiA1Ye5oP72Nf6MZAxDZqF/9D0mwwWm4QLt6CV/rw44QveJHzd7wMMl35zRq3CEJMg3FUDk0mPgpPE/I0/Jo4mPM6yfiyg+o9jLrn3P1muLoCppgmuT4/WpN8UsqFAGLOJHnM+w6Q19cTRf9HHJEs60Hf3VGeCFh85k2M+K4LhSEsQ/Vj6NYAV0iiuM4h+vCiiHMMI1F3z0tMJDW8NkdkBlOWh+mJX5rOHwJadhjfeu/UoqxiXtyBWI0Qp/vXaaqQ63SwThmoC3o1572xfki5x7oOCKjzfsrgJxHUjrE5+pw49/FEwA7JXQk1QXGgJc/jkw79Pet/KCYMUGzTAfFwNFQorpmGUmr+aKla/dlmBIfF7A+1VGd2kf6rmQmYWFgghNjxKn0CXHmYH95vFwc4pm1pRkNL2fJtDpRL5p2/3dUeizPvbsfzf5CQVHIlnAlEDHBIQSGzElEzgDRFwU+xtdYaaiLR2klyYaFJCZVnn5SJcvkTO4wSfHQuZuW/kTesHRTYFWg85Vi0CEjp+TtbZ4QvqWGMXxDfYWIGl8c/8BKevTpzNNFbcnptu8WqA3PTxtfFKt91jHDsqiEVo= 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:(13230031)(39830400003)(136003)(376002)(396003)(366004)(346002)(230922051799003)(64100799003)(451199024)(186009)(1800799012)(54906003)(66556008)(66946007)(66476007)(41300700001)(1076003)(6506007)(2616005)(107886003)(26005)(6666004)(6512007)(36756003)(38350700005)(38100700002)(52116002)(86362001)(83380400001)(478600001)(6486002)(44832011)(8676002)(8936002)(2906002)(4326008)(5660300002)(6916009)(316002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: wgGqkp5P5ouQs0lHot+StuaalfSr/uM9cD0r0DEx6fzTsmUB08XfiaS12eKOkcJOT3+97aCAyL5O/f+tTa0QkpCPyDcI81lOx77lnE3RInrMAvmFv/6B5HM1scVuUqAwFpKzfNVmoJJegTilRTFLCt4BU7UMrTIwVSI9KjJV/GXBt1lJhgZMZQLHVnHUeHFOkq8GkWDmFXeTtUJAgjBs8NkqalTvTNsWKkC/6IC3wPzqNgD5AEFFC+wuT1rRZhNMiLRCiwJVo8xyHnaJwL3JHwbW7XNxxU3rn+XjMmbsvtf+4h+VxfTdsWexqCEfhhSPJbx5VtMjks8aS+LCMCxNUPmT8X0mrFJkoySnl7wyquellozGGeuuQMQ4Zxo7R2RUkIl1779JHYG3Eg1bwFDLF48/3B8YhtyKOdcscXwP/HbMrB7+99bbMo04O7AJtBC2DXpN2wXIh90bpQY8MBNC9qvYnx0toZ3brr8OL4iTNf/sFgHt+wEUy/S7VDyDCp9gzSvxzgUAWAloMxV41bGzFD1wbYOzIJfKM8TBuTbvF+RRs4lGg8Q2p7g/UoFfxruW/Iy/Q/696qb3BgAIzQ/Eob3EcFNFzqR6a7SSLJzLlGIkigIHpoSjnOny9yYLyIiDhg5BiCeIoq/lzR0RaSeOy2c479yIJWD/eUvDsP4UO4nYmgAPRMbG8pdFNv+tbGgAK6GIruSNU9jGQab/nwVKeD+WBqAd3byvN/4zNuidYLJpFmdH2MhaaRSLCCQbqn2yhzYzQvssp25xUUOLCtsHzfx0cUJxcGt1kW4lS8Lq74fGo68gRVYdCJWN1loyGKZDdx9uLt5NDggnvAjVjGlqhJHSIjZ/Ajmaq0gl9OdHtIjm+/WRz9BFx3DmbGplqWI1BRVtt9bMovO7e8VKljZyb+GAXCFpEittSMMq5esK3ljy9So6hya5ofQ27aPS/hCEf1EEt2TevWj5ZmfVOWfCDiFNkei4//U3MwD3XdrShYSc/ZeDz3bbe6MQqDZjtKbrKUV2hQ2KpxIJ4D9h1TPDz/sGXu1fEDMtRnHAI4qkjLVgFYN5xPWp1g5QVnTam5IX6nPnae5EFF0AzPS3GBz5eXVojAZtUVHCxj+jhRnuEvykAfIlCvEHA+RNg8fe/LWKaxcfP28C4gSbbu4z1spp+1umLKjE54ulBf77C9zHSokr4c/IHMoE/xaRIze+E+azcVyyOASiVB08I2oIWQ4ycag1QepfpSVpkGOiqZ0ZZ9THs8qyWBfT2rLjAW5QlrcHmaw1mDKkZETHjO0FVkWz8AvbGQlqzUfq/iLK1bUWCKT+SpVX60KL3F3f00O9NrcFqc73KNQdF5rJ3oBCzXGaHKFbj+G6VJxTzqb3dWoCpT4gq4yVCblkvZ21mxOx9gRIi9NAK1YcxVvFx4QYfgmr32aPW+uaEaciOGzVHw6p9Ug7CSsT2YJlyI3ICZKvZxIyLZwfbqr9wEd3CaPha+Xy7XdRssciaRGOFIsfhDnqcsaU+WDcIDDR+4yrhmh9bTw+GeUl0r4TdRzKPcT/pzZvOjILAR/5HYOrjaTW2g9JroENrkbQLG68+dKTTFJGMSvv7HTqKbWN4Jf7XqoeLJGuzg== X-OriginatorOrg: corigine.com X-MS-Exchange-CrossTenant-Network-Message-Id: 93311fd4-22b5-44f9-8e65-08dbfb8b0ca1 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR13MB5545.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Dec 2023 03:24:43.6744 (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: r0NG71r/A4Sv3oXgi+a5hexhRJAetqhDP19OTh73Mmn0ZlwaFgFaLxpZ2YbPu0iOCfWQ7wdvDRqa6uiRMYbEsPly10k5iRa0AQvgSVC0ZaY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR13MB6259 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 Use the 'ctrl' rather than 'cap' to check the switch mode of features. Signed-off-by: Chaoyong He Reviewed-by: Peng Zhang Reviewed-by: Long Wu --- drivers/net/nfp/nfd3/nfp_nfd3_dp.c | 10 +++++----- drivers/net/nfp/nfdk/nfp_nfdk_dp.c | 12 ++++++------ drivers/net/nfp/nfp_net_common.c | 2 +- drivers/net/nfp/nfp_rxtx.c | 3 +-- 4 files changed, 13 insertions(+), 14 deletions(-) diff --git a/drivers/net/nfp/nfd3/nfp_nfd3_dp.c b/drivers/net/nfp/nfd3/nfp_nfd3_dp.c index ff9b10f046..56e57abacb 100644 --- a/drivers/net/nfp/nfd3/nfp_nfd3_dp.c +++ b/drivers/net/nfp/nfd3/nfp_nfd3_dp.c @@ -30,7 +30,7 @@ nfp_net_nfd3_tx_tso(struct nfp_net_txq *txq, uint64_t ol_flags; struct nfp_net_hw *hw = txq->hw; - if ((hw->super.cap & NFP_NET_CFG_CTRL_LSO_ANY) == 0) + if ((hw->super.ctrl & NFP_NET_CFG_CTRL_LSO_ANY) == 0) goto clean_txd; ol_flags = mb->ol_flags; @@ -69,7 +69,7 @@ nfp_net_nfd3_tx_cksum(struct nfp_net_txq *txq, uint64_t ol_flags; struct nfp_net_hw *hw = txq->hw; - if ((hw->super.cap & NFP_NET_CFG_CTRL_TXCSUM) == 0) + if ((hw->super.ctrl & NFP_NET_CFG_CTRL_TXCSUM) == 0) return; ol_flags = mb->ol_flags; @@ -127,8 +127,8 @@ nfp_net_nfd3_tx_vlan(struct nfp_net_txq *txq, { struct nfp_net_hw *hw = txq->hw; - if ((hw->super.cap & NFP_NET_CFG_CTRL_TXVLAN_V2) != 0 || - (hw->super.cap & NFP_NET_CFG_CTRL_TXVLAN) == 0) + if ((hw->super.ctrl & NFP_NET_CFG_CTRL_TXVLAN_V2) != 0 || + (hw->super.ctrl & NFP_NET_CFG_CTRL_TXVLAN) == 0) return; if ((mb->ol_flags & RTE_MBUF_F_TX_VLAN) != 0) { @@ -278,7 +278,7 @@ nfp_net_nfd3_xmit_pkts_common(void *tx_queue, } if (unlikely(pkt->nb_segs > 1 && - (hw->super.cap & NFP_NET_CFG_CTRL_GATHER) == 0)) { + (hw->super.ctrl & NFP_NET_CFG_CTRL_GATHER) == 0)) { PMD_TX_LOG(ERR, "Multisegment packet not supported"); goto xmit_end; } diff --git a/drivers/net/nfp/nfdk/nfp_nfdk_dp.c b/drivers/net/nfp/nfdk/nfp_nfdk_dp.c index 0141fbcc8f..fbf132347d 100644 --- a/drivers/net/nfp/nfdk/nfp_nfdk_dp.c +++ b/drivers/net/nfp/nfdk/nfp_nfdk_dp.c @@ -23,7 +23,7 @@ nfp_net_nfdk_tx_cksum(struct nfp_net_txq *txq, uint64_t ol_flags; struct nfp_net_hw *hw = txq->hw; - if ((hw->super.cap & NFP_NET_CFG_CTRL_TXCSUM) == 0) + if ((hw->super.ctrl & NFP_NET_CFG_CTRL_TXCSUM) == 0) return flags; ol_flags = mb->ol_flags; @@ -57,7 +57,7 @@ nfp_net_nfdk_tx_tso(struct nfp_net_txq *txq, txd.raw = 0; - if ((hw->super.cap & NFP_NET_CFG_CTRL_LSO_ANY) == 0) + if ((hw->super.ctrl & NFP_NET_CFG_CTRL_LSO_ANY) == 0) return txd.raw; ol_flags = mb->ol_flags; @@ -146,7 +146,7 @@ nfp_net_nfdk_tx_maybe_close_block(struct nfp_net_txq *txq, return -EINVAL; /* Count TSO descriptor */ - if ((txq->hw->super.cap & NFP_NET_CFG_CTRL_LSO_ANY) != 0 && + if ((txq->hw->super.ctrl & NFP_NET_CFG_CTRL_LSO_ANY) != 0 && (pkt->ol_flags & RTE_MBUF_F_TX_TCP_SEG) != 0) n_descs++; @@ -325,7 +325,7 @@ nfp_net_nfdk_xmit_pkts_common(void *tx_queue, nfp_net_nfdk_set_meta_data(pkt, txq, &metadata); if (unlikely(pkt->nb_segs > 1 && - (hw->super.cap & NFP_NET_CFG_CTRL_GATHER) == 0)) { + (hw->super.ctrl & NFP_NET_CFG_CTRL_GATHER) == 0)) { PMD_TX_LOG(ERR, "Multisegment packet not supported"); goto xmit_end; } @@ -335,7 +335,7 @@ nfp_net_nfdk_xmit_pkts_common(void *tx_queue, * multisegment packet, but TSO info needs to be in all of them. */ dma_len = pkt->data_len; - if ((hw->super.cap & NFP_NET_CFG_CTRL_LSO_ANY) != 0 && + if ((hw->super.ctrl & NFP_NET_CFG_CTRL_LSO_ANY) != 0 && (pkt->ol_flags & RTE_MBUF_F_TX_TCP_SEG) != 0) { type = NFDK_DESC_TX_TYPE_TSO; } else if (pkt->next == NULL && dma_len <= NFDK_TX_MAX_DATA_PER_HEAD) { @@ -408,7 +408,7 @@ nfp_net_nfdk_xmit_pkts_common(void *tx_queue, ktxds->raw = rte_cpu_to_le_64(nfp_net_nfdk_tx_cksum(txq, temp_pkt, metadata)); ktxds++; - if ((hw->super.cap & NFP_NET_CFG_CTRL_LSO_ANY) != 0 && + if ((hw->super.ctrl & NFP_NET_CFG_CTRL_LSO_ANY) != 0 && (temp_pkt->ol_flags & RTE_MBUF_F_TX_TCP_SEG) != 0) { ktxds->raw = rte_cpu_to_le_64(nfp_net_nfdk_tx_tso(txq, temp_pkt)); ktxds++; diff --git a/drivers/net/nfp/nfp_net_common.c b/drivers/net/nfp/nfp_net_common.c index 99e2fc54e0..fed36dac53 100644 --- a/drivers/net/nfp/nfp_net_common.c +++ b/drivers/net/nfp/nfp_net_common.c @@ -540,7 +540,7 @@ nfp_check_offloads(struct rte_eth_dev *dev) (tx_offload & RTE_ETH_TX_OFFLOAD_VXLAN_TNL_TSO) != 0) { if ((cap & NFP_NET_CFG_CTRL_LSO) != 0) ctrl |= NFP_NET_CFG_CTRL_LSO; - else + else if ((cap & NFP_NET_CFG_CTRL_LSO2) != 0) ctrl |= NFP_NET_CFG_CTRL_LSO2; } diff --git a/drivers/net/nfp/nfp_rxtx.c b/drivers/net/nfp/nfp_rxtx.c index 3840e2372c..f775f25cb2 100644 --- a/drivers/net/nfp/nfp_rxtx.c +++ b/drivers/net/nfp/nfp_rxtx.c @@ -391,8 +391,7 @@ nfp_net_parse_meta_qinq(const struct nfp_meta_parsed *meta, { struct nfp_hw *hw = &rxq->hw->super; - if ((hw->ctrl & NFP_NET_CFG_CTRL_RXQINQ) == 0 || - (hw->cap & NFP_NET_CFG_CTRL_RXQINQ) == 0) + if ((hw->ctrl & NFP_NET_CFG_CTRL_RXQINQ) == 0) return; if (meta->vlan_layer < NFP_META_MAX_VLANS)