net/hns3: support VF

This patch adds support for hns3 VF PMD driver.

In current version, we only support VF device is bound to vfio_pci or
igb_uio and then driven by DPDK driver when PF is driven by kernel mode
hns3 ethdev driver, VF is not supported when PF is driven by DPDK
driver.

Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com>
Signed-off-by: Chunsong Feng <fengchunsong@huawei.com>
Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
Signed-off-by: Hao Chen <chenhao164@huawei.com>
Signed-off-by: Huisong Li <lihuisong@huawei.com>
Signed-off-by: Chengchang Tang <tangchengchang@hisilicon.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
This commit is contained in:
Wei Hu (Xavier) 2019-09-26 22:02:01 +08:00 committed by Ferruh Yigit
parent 463e748964
commit a5475d61fa
4 changed files with 1260 additions and 0 deletions

View File

@ -0,0 +1,21 @@
;
; Supported features of the 'hns3' network poll mode driver.
;
; Refer to default.ini for the full list of available PMD features.
;
[Features]
Link status = Y
MTU update = Y
Jumbo frame = Y
Unicast MAC filter = Y
Multicast MAC filter = Y
RSS hash = Y
RSS key update = Y
RSS reta update = Y
VLAN filter = Y
Flow director = Y
Flow API = Y
VLAN offload = Y
Linux UIO = Y
Linux VFIO = Y
ARMv8 = Y

View File

@ -23,6 +23,7 @@ LIBABIVER := 1
# all source are stored in SRCS-y # all source are stored in SRCS-y
# #
SRCS-$(CONFIG_RTE_LIBRTE_HNS3_PMD) += hns3_ethdev.c SRCS-$(CONFIG_RTE_LIBRTE_HNS3_PMD) += hns3_ethdev.c
SRCS-$(CONFIG_RTE_LIBRTE_HNS3_PMD) += hns3_ethdev_vf.c
SRCS-$(CONFIG_RTE_LIBRTE_HNS3_PMD) += hns3_cmd.c SRCS-$(CONFIG_RTE_LIBRTE_HNS3_PMD) += hns3_cmd.c
SRCS-$(CONFIG_RTE_LIBRTE_HNS3_PMD) += hns3_mbx.c SRCS-$(CONFIG_RTE_LIBRTE_HNS3_PMD) += hns3_mbx.c
SRCS-$(CONFIG_RTE_LIBRTE_HNS3_PMD) += hns3_rss.c SRCS-$(CONFIG_RTE_LIBRTE_HNS3_PMD) += hns3_rss.c

File diff suppressed because it is too large Load Diff

View File

@ -16,6 +16,7 @@ endif
sources = files('hns3_cmd.c', sources = files('hns3_cmd.c',
'hns3_dcb.c', 'hns3_dcb.c',
'hns3_ethdev.c', 'hns3_ethdev.c',
'hns3_ethdev_vf.c',
'hns3_fdir.c', 'hns3_fdir.c',
'hns3_flow.c', 'hns3_flow.c',
'hns3_mbx.c', 'hns3_mbx.c',