From patchwork Fri Mar 15 02:54:48 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jie Hai X-Patchwork-Id: 138411 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 EDAB441B15; Fri, 15 Mar 2024 03:59:26 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 38FC042E8B; Fri, 15 Mar 2024 03:59:26 +0100 (CET) Received: from szxga06-in.huawei.com (szxga06-in.huawei.com [45.249.212.32]) by mails.dpdk.org (Postfix) with ESMTP id 041E642DCA for ; Fri, 15 Mar 2024 03:59:23 +0100 (CET) Received: from mail.maildlp.com (unknown [172.19.88.214]) by szxga06-in.huawei.com (SkyGuard) with ESMTP id 4Twpq15YmYz1vwm5 for ; Fri, 15 Mar 2024 10:58:37 +0800 (CST) Received: from kwepemd100004.china.huawei.com (unknown [7.221.188.31]) by mail.maildlp.com (Postfix) with ESMTPS id B5A8B1A016C for ; Fri, 15 Mar 2024 10:59:21 +0800 (CST) Received: from localhost.localdomain (10.67.165.2) by kwepemd100004.china.huawei.com (7.221.188.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1258.28; Fri, 15 Mar 2024 10:59:21 +0800 From: Jie Hai To: , Yisen Zhuang CC: , , Subject: [PATCH v2] net/hns3: support new device Date: Fri, 15 Mar 2024 10:54:48 +0800 Message-ID: <20240315025448.2820722-1-haijie1@huawei.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20240306092112.506493-1-haijie1@huawei.com> References: <20240306092112.506493-1-haijie1@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.67.165.2] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To kwepemd100004.china.huawei.com (7.221.188.31) 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 This patch introduces the new devices, which are on-chip network interface controllers with RDMA/DCB/ROH supporting. One is 100GE and the other is 200GE. Both can be found on HIP09/HIP10 SoCs. Cc: stable@dpdk.org Signed-off-by: Jie Hai --- doc/guides/nics/hns3.rst | 2 +- doc/guides/rel_notes/release_24_03.rst | 4 ++++ drivers/net/hns3/hns3_cmd.c | 4 +++- drivers/net/hns3/hns3_ethdev.c | 2 ++ drivers/net/hns3/hns3_ethdev.h | 2 ++ 5 files changed, 12 insertions(+), 2 deletions(-) diff --git a/doc/guides/nics/hns3.rst b/doc/guides/nics/hns3.rst index 3b0613fc1b11..f32cbafbe8b2 100644 --- a/doc/guides/nics/hns3.rst +++ b/doc/guides/nics/hns3.rst @@ -6,7 +6,7 @@ HNS3 Poll Mode Driver The hns3 PMD (**librte_net_hns3**) provides poll mode driver support for the inbuilt HiSilicon Network Subsystem(HNS) network engine -found in the HiSilicon Kunpeng 920 SoC and Kunpeng 930 SoC . +found in the HiSilicon Kunpeng 920 SoC(HIP08) and Kunpeng 930 SoC(HIP09/HIP10) . Features -------- diff --git a/doc/guides/rel_notes/release_24_03.rst b/doc/guides/rel_notes/release_24_03.rst index 932688ca4d82..e971f9738e0d 100644 --- a/doc/guides/rel_notes/release_24_03.rst +++ b/doc/guides/rel_notes/release_24_03.rst @@ -176,6 +176,10 @@ New Features * Added power-saving during polling within the ``rte_event_dequeue_burst()`` API. * Added support for DMA adapter. + * **Updated HiSilicon hns3 ethdev driver.** + + * Added new device supporting RDMA/DCB/ROH with PCI IDs: ``0xa227, 0xa22c``. + Removed Items ------------- diff --git a/drivers/net/hns3/hns3_cmd.c b/drivers/net/hns3/hns3_cmd.c index 2c1664485bef..001ff49b368b 100644 --- a/drivers/net/hns3/hns3_cmd.c +++ b/drivers/net/hns3/hns3_cmd.c @@ -545,7 +545,9 @@ hns3_set_dcb_capability(struct hns3_hw *hw) if (device_id == HNS3_DEV_ID_25GE_RDMA || device_id == HNS3_DEV_ID_50GE_RDMA || device_id == HNS3_DEV_ID_100G_RDMA_MACSEC || - device_id == HNS3_DEV_ID_200G_RDMA) + device_id == HNS3_DEV_ID_200G_RDMA || + device_id == HNS3_DEV_ID_100G_ROH || + device_id == HNS3_DEV_ID_200G_ROH) hns3_set_bit(hw->capability, HNS3_DEV_SUPPORT_DCB_B, 1); } diff --git a/drivers/net/hns3/hns3_ethdev.c b/drivers/net/hns3/hns3_ethdev.c index b10d1216d2d1..9730b9a7e9f6 100644 --- a/drivers/net/hns3/hns3_ethdev.c +++ b/drivers/net/hns3/hns3_ethdev.c @@ -6649,6 +6649,8 @@ static const struct rte_pci_id pci_id_hns3_map[] = { { RTE_PCI_DEVICE(PCI_VENDOR_ID_HUAWEI, HNS3_DEV_ID_50GE_RDMA) }, { RTE_PCI_DEVICE(PCI_VENDOR_ID_HUAWEI, HNS3_DEV_ID_100G_RDMA_MACSEC) }, { RTE_PCI_DEVICE(PCI_VENDOR_ID_HUAWEI, HNS3_DEV_ID_200G_RDMA) }, + { RTE_PCI_DEVICE(PCI_VENDOR_ID_HUAWEI, HNS3_DEV_ID_100G_ROH) }, + { RTE_PCI_DEVICE(PCI_VENDOR_ID_HUAWEI, HNS3_DEV_ID_200G_ROH) }, { .vendor_id = 0, }, /* sentinel */ }; diff --git a/drivers/net/hns3/hns3_ethdev.h b/drivers/net/hns3/hns3_ethdev.h index 12d8299def39..e70c5fff2a45 100644 --- a/drivers/net/hns3/hns3_ethdev.h +++ b/drivers/net/hns3/hns3_ethdev.h @@ -28,7 +28,9 @@ #define HNS3_DEV_ID_25GE_RDMA 0xA222 #define HNS3_DEV_ID_50GE_RDMA 0xA224 #define HNS3_DEV_ID_100G_RDMA_MACSEC 0xA226 +#define HNS3_DEV_ID_100G_ROH 0xA227 #define HNS3_DEV_ID_200G_RDMA 0xA228 +#define HNS3_DEV_ID_200G_ROH 0xA22C #define HNS3_DEV_ID_100G_VF 0xA22E #define HNS3_DEV_ID_100G_RDMA_PFC_VF 0xA22F