[dpdk-dev] [PATCH v2 00/22] add hns3 ethernet PMD driver
Wei Hu (Xavier)
xavier.huwei at huawei.com
Sat Sep 21 05:08:49 CEST 2019
Hi, Ferruh Yigit
I sent out patch V2 yesterday. And I found that the following page
indicates that there is a compilation error.
http://mails.dpdk.org/archives/test-report/2019-September/098385.html
The relevant sections in the log:
<...>
*Meson Build Failed #1: OS: FC30-64 Target:build-gcc-static FAILED:
drivers/a715181@@tmp_rte_pmd_hns3 at sta
<https://mails.dpdk.org/listinfo/test-report>/net_hns3_hns3_ethdev_vf.c.o
<...>
../drivers/net/hns3/hns3_ethdev_vf.c:1552:24: error: initialization of
‘void (*)(struct rte_eth_dev *, struct rte_eth_dev_info *)’ from
incompatible pointer type ‘int (*)(struct rte_eth_dev *, struct
rte_eth_dev_info *)’ [-Werror=incompatible-pointer-types] 1552 |
.dev_infos_get = hns3vf_dev_infos_get, | ^~~~~~~~~~~~~~~~~~~~
../drivers/net/hns3/hns3_ethdev_vf.c:1552:24: note: (near initialization
for ‘hns3vf_eth_dev_ops.dev_infos_get’) cc1: all warnings being treated
as errors
<...>
But I found that perhaps the reason for this compilation error is that
the following patch was not built on CI,
and it had been in the latest branch of the repository:
http://dpdk.org/git/next/dpdk-next-net
The information of the relevant patch as below:
commit 84c4620318b642aea9b5388aa7fbc79a4fe6f29e
Author: Ivan Ilchenko <ivan.ilchenko at oktetlabs.com>
Date: Thu Sep 12 17:42:28 2019 +0100
ethdev: change device info get callback to return int
diff --git a/lib/librte_ethdev/rte_ethdev_core.h
b/lib/librte_ethdev/rte_ethdev_core.h
index 2922d5b..2394b32 100644
--- a/lib/librte_ethdev/rte_ethdev_core.h
+++ b/lib/librte_ethdev/rte_ethdev_core.h
@@ -103,8 +103,8 @@ typedef int (*eth_queue_stats_mapping_set_t)(struct
rte_eth_dev *dev,
uint8_t is_rx);
/**< @internal Set a queue statistics mapping for a tx/rx queue of an
Ethernet device. */
-typedef void (*eth_dev_infos_get_t)(struct rte_eth_dev *dev,
- struct rte_eth_dev_info *dev_info);
+typedef int (*eth_dev_infos_get_t)(struct rte_eth_dev *dev,
+ struct rte_eth_dev_info *dev_info);
/**< @internal Get specific information of an Ethernet device. */
Regards
Xavier
On 2019/9/20 21:25, Wei Hu (Xavier) wrote:
> The Hisilicon Network Subsystem is a long term evolution IP which is
> supposed to be used in Hisilicon ICT SoCs such as Kunpeng 920.
>
> This series add DPDK rte_ethdev poll mode driver for Hisilicon
> Network Subsystem 3(hns3) network engine.
>
> Wei Hu (Xavier) (22):
> net/hns3: add hns3 build and doc infrastructure
> net/hns3: add hardware registers definition
> net/hns3: add some definitions for data structure and macro
> net/hns3: register hns3 PMD driver and add the log interface
> definition
> net/hns3: add support for cmd of hns3 PMD driver
> net/hns3: add the initialization of hns3 PMD driver
> net/hns3: add support for MAC address related operations
> net/hns3: add support for some misc operations
> net/hns3: add support for link_update operation
> net/hns3: add support for flow directory of hns3 PMD driver
> net/hns3: add support for RSS of hns3 PMD driver
> net/hns3: add support for flow control of hns3 PMD driver
> net/hns3: add support for vlan of hns3 PMD driver
> net/hns3: add support for mailbox of hns3 PMD driver
> net/hns3: add support for hns3 VF PMD driver
> net/hns3: add RX/TX package burst and queue related operation
> net/hns3: add start stop configure promiscuous ops
> net/hns3: add dump register ops for hns3 PMD driver
> net/hns3: add abnormal interrupt process for hns3 PMD driver
> net/hns3: add stats related ops for hns3 PMD driver
> net/hns3: add reset related process for hns3 PMD driver
> net/hns3: add multiple process support for hns3 PMD driver
>
> MAINTAINERS | 8 +
> config/common_base | 5 +
> config/common_linux | 5 +
> config/defconfig_arm-armv7a-linuxapp-gcc | 1 +
> config/defconfig_i686-native-linuxapp-gcc | 5 +
> config/defconfig_i686-native-linuxapp-icc | 5 +
> config/defconfig_ppc_64-power8-linuxapp-gcc | 1 +
> config/defconfig_x86_64-native-linuxapp-icc | 5 +
> config/defconfig_x86_x32-native-linuxapp-gcc | 5 +
> doc/guides/nics/features/hns3.ini | 34 +
> doc/guides/nics/features/hns3_vf.ini | 29 +
> doc/guides/nics/hns3.rst | 60 +
> doc/guides/nics/index.rst | 1 +
> doc/guides/rel_notes/release_19_11.rst | 5 +
> drivers/net/Makefile | 1 +
> drivers/net/hns3/Makefile | 45 +
> drivers/net/hns3/hns3_cmd.c | 565 +++
> drivers/net/hns3/hns3_cmd.h | 761 ++++
> drivers/net/hns3/hns3_dcb.c | 1642 +++++++++
> drivers/net/hns3/hns3_dcb.h | 166 +
> drivers/net/hns3/hns3_ethdev.c | 4939 ++++++++++++++++++++++++++
> drivers/net/hns3/hns3_ethdev.h | 645 ++++
> drivers/net/hns3/hns3_ethdev_vf.c | 1735 +++++++++
> drivers/net/hns3/hns3_fdir.c | 1059 ++++++
> drivers/net/hns3/hns3_fdir.h | 205 ++
> drivers/net/hns3/hns3_flow.c | 1903 ++++++++++
> drivers/net/hns3/hns3_intr.c | 1166 ++++++
> drivers/net/hns3/hns3_intr.h | 79 +
> drivers/net/hns3/hns3_logs.h | 34 +
> drivers/net/hns3/hns3_mbx.c | 353 ++
> drivers/net/hns3/hns3_mbx.h | 136 +
> drivers/net/hns3/hns3_mp.c | 214 ++
> drivers/net/hns3/hns3_mp.h | 14 +
> drivers/net/hns3/hns3_regs.c | 368 ++
> drivers/net/hns3/hns3_regs.h | 99 +
> drivers/net/hns3/hns3_rss.c | 584 +++
> drivers/net/hns3/hns3_rss.h | 124 +
> drivers/net/hns3/hns3_rxtx.c | 1676 +++++++++
> drivers/net/hns3/hns3_rxtx.h | 317 ++
> drivers/net/hns3/hns3_stats.c | 971 +++++
> drivers/net/hns3/hns3_stats.h | 152 +
> drivers/net/hns3/meson.build | 37 +
> drivers/net/hns3/rte_pmd_hns3_version.map | 3 +
> drivers/net/meson.build | 1 +
> mk/rte.app.mk | 1 +
> 45 files changed, 20164 insertions(+)
> create mode 100644 doc/guides/nics/features/hns3.ini
> create mode 100644 doc/guides/nics/features/hns3_vf.ini
> create mode 100644 doc/guides/nics/hns3.rst
> create mode 100644 drivers/net/hns3/Makefile
> create mode 100644 drivers/net/hns3/hns3_cmd.c
> create mode 100644 drivers/net/hns3/hns3_cmd.h
> create mode 100644 drivers/net/hns3/hns3_dcb.c
> create mode 100644 drivers/net/hns3/hns3_dcb.h
> create mode 100644 drivers/net/hns3/hns3_ethdev.c
> create mode 100644 drivers/net/hns3/hns3_ethdev.h
> create mode 100644 drivers/net/hns3/hns3_ethdev_vf.c
> create mode 100644 drivers/net/hns3/hns3_fdir.c
> create mode 100644 drivers/net/hns3/hns3_fdir.h
> create mode 100644 drivers/net/hns3/hns3_flow.c
> create mode 100644 drivers/net/hns3/hns3_intr.c
> create mode 100644 drivers/net/hns3/hns3_intr.h
> create mode 100644 drivers/net/hns3/hns3_logs.h
> create mode 100644 drivers/net/hns3/hns3_mbx.c
> create mode 100644 drivers/net/hns3/hns3_mbx.h
> create mode 100644 drivers/net/hns3/hns3_mp.c
> create mode 100644 drivers/net/hns3/hns3_mp.h
> create mode 100644 drivers/net/hns3/hns3_regs.c
> create mode 100644 drivers/net/hns3/hns3_regs.h
> create mode 100644 drivers/net/hns3/hns3_rss.c
> create mode 100644 drivers/net/hns3/hns3_rss.h
> create mode 100644 drivers/net/hns3/hns3_rxtx.c
> create mode 100644 drivers/net/hns3/hns3_rxtx.h
> create mode 100644 drivers/net/hns3/hns3_stats.c
> create mode 100644 drivers/net/hns3/hns3_stats.h
> create mode 100644 drivers/net/hns3/meson.build
> create mode 100644 drivers/net/hns3/rte_pmd_hns3_version.map
>
More information about the dev
mailing list