net/hns3: offload calculating shapping to firmware
authorHuisong Li <lihuisong@huawei.com>
Tue, 29 Sep 2020 12:01:13 +0000 (20:01 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Thu, 8 Oct 2020 17:58:10 +0000 (19:58 +0200)
commit5d78d42b31203594c6140a4bf0409f854bafe517
tree1425f63623acedc9469944ffc07d090371e6def2
parentf2577609209330341922bea57e24b7e27ba084d3
net/hns3: offload calculating shapping to firmware

In order to have more flexible selection of shapping algorithm based on
different versions of hns3 network engine, moves the algorithm of
calculating shapping parameter to firmware to execute. If bit
HNS3_TM_RATE_VLD_B of flag field of struct named hns3_pri_shapping_cmd,
hns3_pg_shapping_cmd or hns3_port_shapping_cmd is set to 1, firmware of
network engine, which device revision_id is greater than and equal to
0x30, will recalculate the shapping parameters according to the xxx_rate
field of struct hns3_xxx_shapping_cmd and the opcode of scheduling
level, and configure to hardware.

But driver still needs to calculate shapping parameters and configure
firmware, so as to be compatible with the network engine with
revision_id eqauls 0x21. And the rate and the flag will be ignored based
on the network engine with revision_id equals 0x21.

Signed-off-by: Huisong Li <lihuisong@huawei.com>
Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com>
drivers/net/hns3/hns3_dcb.c
drivers/net/hns3/hns3_dcb.h