Go to file
Huisong Li 2192c428f9 net/hns3: fix firmware compatibility configuration
The firmware compatibility configuration in PF driver is used to
maintain the compatibility of some features of the driver and
firmware, and requires firmware to enable these features. Currently,
the configuration is in hns3_init_hardware(), which is a little back.
Because firmware may clear some configurations (such as, MAC related)
after receiving the command. And firmware can not be aware of some
default initializations (such as, flow control) before executing the
command to set the copper PHY when the PHY is controlled by firmware.
Therefore, it is recommended that no other hardware resources are
configured before the compatibility configuration. And it should be
moved to hns3_cmd_init(), which is responsible for the firmware
command initialization of driver.

In addition, the driver needs to perform corresponding processing
if the command fails to be sent.
1) If firmware fails to take over the copper PHY, the copper port fails
   to initialize.
2) If fails to enable the report of link events, the device does not
   support the LSC capability.

Fixes: bff6ebfe30d4 ("net/hns3: refactor PF LSC event report")
Fixes: bac6a06441 ("net/hns3: fix link status change from firmware")
Cc: stable@dpdk.org

Signed-off-by: Huisong Li <lihuisong@huawei.com>
Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
2021-04-15 02:55:04 +02:00
.ci build: update minimum required Meson version 2021-04-16 18:51:51 +02:00
.github/workflows ci: bump ABI reference version 2021-04-16 14:09:03 +02:00
app app/testpmd: fix bitmap of link speeds when force speed 2021-04-14 13:54:44 +02:00
buildtools buildtools: fix all drivers disabled on Windows 2021-04-17 12:49:23 +02:00
config config/arm: fix implementer and its SoCs 2021-04-15 22:34:37 +02:00
devtools cryptodev: support multiple cipher data-units 2021-04-16 12:43:33 +02:00
doc net/iavf: add offload path for Rx AVX512 flex descriptor 2021-04-14 14:48:06 +02:00
drivers net/hns3: fix firmware compatibility configuration 2021-04-15 02:55:04 +02:00
examples examples/l2fwd-crypto: remove key size validation 2021-04-16 12:43:33 +02:00
kernel build: support KNI cross-compilation 2021-03-15 23:43:40 +01:00
lib ethdev: update flow item GTP QFI definition 2021-04-14 14:17:41 +02:00
license license: fix typos 2021-04-13 13:56:52 +02:00
usertools usertools: show hugepages requested/set on failure 2021-03-25 18:07:47 +01:00
.editorconfig devtools: add EditorConfig file 2020-02-22 21:05:22 +01:00
.gitattributes improve git diff 2016-11-13 15:25:12 +01:00
.gitignore regex/mlx5: introduce driver for BlueField 2 2020-07-21 19:04:05 +02:00
.travis.yml ci: bump ABI reference version 2021-04-16 14:09:03 +02:00
ABI_VERSION version: 21.05-rc0 2021-02-15 11:08:19 +01:00
MAINTAINERS pflock: add phase-fair reader writer locks 2021-04-14 21:59:47 +02:00
Makefile build: create dummy Makefile 2020-09-07 23:51:57 +02:00
meson_options.txt config/arm: add platform config option 2021-04-15 22:34:37 +02:00
meson.build build: update minimum required Meson version 2021-04-16 18:51:51 +02:00
README license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
VERSION version: 21.05-rc0 2021-02-15 11:08:19 +01:00

DPDK is a set of libraries and drivers for fast packet processing.
It supports many processor architectures and both FreeBSD and Linux.

The DPDK uses the Open Source BSD-3-Clause license for the core libraries
and drivers. The kernel components are GPL-2.0 licensed.

Please check the doc directory for release notes,
API documentation, and sample application information.

For questions and usage discussions, subscribe to: users@dpdk.org
Report bugs and issues to the development mailing list: dev@dpdk.org