mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-20 18:54:09 +08:00
RDMA/hns: Configure ecn field of ip header
In order to compatible with the third party RoCE device, The hardware modify the set method for the ecn field of ip header in new hip08 version. The high 6bit of tclass be assigned for dscp field of packet. Signed-off-by: Lijun Ou <oulijun@huawei.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
This commit is contained in:
parent
05ad5482a5
commit
157b52a08d
@ -3640,8 +3640,15 @@ static int hns_roce_v2_modify_qp(struct ib_qp *ibqp,
|
||||
V2_QPC_BYTE_24_HOP_LIMIT_M,
|
||||
V2_QPC_BYTE_24_HOP_LIMIT_S, 0);
|
||||
|
||||
roce_set_field(context->byte_24_mtu_tc, V2_QPC_BYTE_24_TC_M,
|
||||
V2_QPC_BYTE_24_TC_S, grh->traffic_class);
|
||||
if (hr_dev->pci_dev->revision == 0x21 &&
|
||||
gid_attr->gid_type == IB_GID_TYPE_ROCE_UDP_ENCAP)
|
||||
roce_set_field(context->byte_24_mtu_tc,
|
||||
V2_QPC_BYTE_24_TC_M, V2_QPC_BYTE_24_TC_S,
|
||||
grh->traffic_class >> 2);
|
||||
else
|
||||
roce_set_field(context->byte_24_mtu_tc,
|
||||
V2_QPC_BYTE_24_TC_M, V2_QPC_BYTE_24_TC_S,
|
||||
grh->traffic_class);
|
||||
roce_set_field(qpc_mask->byte_24_mtu_tc, V2_QPC_BYTE_24_TC_M,
|
||||
V2_QPC_BYTE_24_TC_S, 0);
|
||||
roce_set_field(context->byte_28_at_fl, V2_QPC_BYTE_28_FL_M,
|
||||
|
Loading…
Reference in New Issue
Block a user