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: sta...@dpdk.org Signed-off-by: Jie Hai <haij...@huawei.com> --- 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 -- 2.30.0