[dpdk-dev] [PATCH 22/22] net/hns3: add hns3 build files

Jerin Jacob Kollanukkaran jerinj at marvell.com
Fri Aug 23 16:08:58 CEST 2019


> -----Original Message-----
> From: dev <dev-bounces at dpdk.org> On Behalf Of Wei Hu (Xavier)
> Sent: Friday, August 23, 2019 7:17 PM
> To: dev at dpdk.org
> Cc: linuxarm at huawei.com; xavier_huwei at 163.com;
> liudongdong3 at huawei.com; forest.zhouchang at huawei.com
> Subject: [dpdk-dev] [PATCH 22/22] net/hns3: add hns3 build files
> 
> This patch add build related files for hns3 PMD driver.
> 
> Signed-off-by: Wei Hu (Xavier) <xavier.huwei at huawei.com>
> Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
> Signed-off-by: Chunsong Feng <fengchunsong at huawei.com>
> Signed-off-by: Hao Chen <chenhao164 at huawei.com>
> Signed-off-by: Huisong Li <lihuisong at huawei.com>
> ---
> +# Hisilicon HNS3 PMD driver
> +#
> +CONFIG_RTE_LIBRTE_HNS3_PMD=y

# Please add meson support
# Move build infra to the first patch
# See git log drivers/net/octeontx2 as example


> diff --git a/config/common_base b/config/common_base
> index 8ef75c2..71a2c33 100644
> --- a/config/common_base
> +++ b/config/common_base
> @@ -282,6 +282,11 @@
> CONFIG_RTE_LIBRTE_E1000_PF_DISABLE_STRIP_CRC=n
>  CONFIG_RTE_LIBRTE_HINIC_PMD=n
> 
>  #
> +# Compile burst-oriented HNS3 PMD driver
> +#
> +CONFIG_RTE_LIBRTE_HNS3_PMD=n
> +
> +#
>  # Compile burst-oriented IXGBE PMD driver
>  #
>  CONFIG_RTE_LIBRTE_IXGBE_PMD=y
> diff --git a/config/defconfig_arm64-armv8a-linuxapp-clang
> b/config/defconfig_arm64-armv8a-linuxapp-clang
> index d3b4dad..c73f5fb 100644
> --- a/config/defconfig_arm64-armv8a-linuxapp-clang
> +++ b/config/defconfig_arm64-armv8a-linuxapp-clang
> @@ -6,3 +6,5 @@
> 
>  CONFIG_RTE_TOOLCHAIN="clang"
>  CONFIG_RTE_TOOLCHAIN_CLANG=y
> +
> +CONFIG_RTE_LIBRTE_HNS3_PMD=n
> diff --git a/doc/guides/nics/features/hns3.ini
> b/doc/guides/nics/features/hns3.ini
> new file mode 100644
> index 0000000..d38d35e
> --- /dev/null
> +++ b/doc/guides/nics/features/hns3.ini
> @@ -0,0 +1,38 @@
> +;
> +; Supported features of the 'hns3' network poll mode driver.

Add doc changes when driver feature gets added.
# See git log drivers/net/octeontx2 as example

> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +Link status          = Y
> +MTU update           = Y
> +Jumbo frame          = Y
> +Promiscuous mode     = Y
> +Allmulticast mode    = Y
> diff --git a/doc/guides/nics/hns3.rst b/doc/guides/nics/hns3.rst
> new file mode 100644
> index 0000000..c9d0253
> --- /dev/null
> +++ b/doc/guides/nics/hns3.rst
> @@ -0,0 +1,55 @@
> +..  SPDX-License-Identifier: BSD-3-Clause
> +    Copyright(c) 2018-2019 Hisilicon Limited.
> +
> +HNS3 Poll Mode Driver
> +===============================
> +
> +The Hisilicon Network Subsystem is a long term evolution IP which is
> +supposed to be used in Hisilicon ICT SoCs such as Kunpeng 920.
> +
> +The HNS3 PMD (librte_pmd_hns3) provides poll mode driver support
> +for hns3(Hisilicon Network Subsystem 3) network engine.
> +
> +Features
> +--------
> +
> +Features of the HNS3 PMD are:
> +
> +- Arch support: ARMv8.

Is it an integrated NIC controller? Why it is supported only on ARMv8?
The reason why I asking because, Enabling CONFIG_RTE_LIBRTE_HNS3_PMD=y
only on arm64 will create a case where build fails for arm64 and passes for
x86. I would like to avoid such disparity. If the build is passing on x86 make it
enable in the common code, not in arm64 config.


> +- Multiple queues for TX and RX
> +- Receive Side Scaling (RSS)
> +- Packet type information
> +- Checksum offload
> +- Promiscuous mode
> +- Multicast mode
> +- Port hardware statistics
> +- Jumbo frames
> +- Link state information
> +- VLAN stripping


> +cflags += '-DALLOW_EXPERIMENTAL_API'
> diff --git a/drivers/net/hns3/rte_pmd_hns3_version.map
> b/drivers/net/hns3/rte_pmd_hns3_version.map
> new file mode 100644
> index 0000000..3aef967
> --- /dev/null
> +++ b/drivers/net/hns3/rte_pmd_hns3_version.map
> @@ -0,0 +1,3 @@
> +DPDK_19.08 {

Change to 19.11



More information about the dev mailing list