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

Wei Hu (Xavier) xavier.huwei at huawei.com
Fri Aug 30 05:22:51 CEST 2019


Hi,  Jerin


On 2019/8/23 22:08, Jerin Jacob Kollanukkaran wrote:
>> -----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
This patch already contains meson support,  thanks
> # Move build infra to the first patch
> # See git log drivers/net/octeontx2 as example
OK, I will  adjust the order of the patches in this series and send V2.
>
>
>> 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
OK, I will modify the patches and send V2.
Thanks
>
>> +;
>> +; 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.
Currently this network engine is integrated in the SoCs, the SoCs can be
used
as a PCIe EP integrated NIC controllers or be used as universal cpus on
the device,
such as servers. The network engine is accessed by ARM cores in the SoCs.
We will enabling CONFIG_RTE_LIBRTE_HNS3_PMD=y in common_linux config in V2.
Thanks.
>
>> +- 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
OK, I will modify the patches and send V2. Thanks.

Regards
Xavier
>
>
>




More information about the dev mailing list