|
|
@@ -538,9 +538,12 @@ static void nicvf_rcv_queue_config(struct nicvf *nic, struct queue_set *qs,
|
|
|
mbx.rq.cfg = (1ULL << 62) | (RQ_CQ_DROP << 8);
|
|
|
nicvf_send_msg_to_pf(nic, &mbx);
|
|
|
|
|
|
- nicvf_queue_reg_write(nic, NIC_QSET_RQ_GEN_CFG, 0, 0x00);
|
|
|
- if (!nic->sqs_mode)
|
|
|
+ if (!nic->sqs_mode && (qidx == 0)) {
|
|
|
+ /* Enable checking L3/L4 length and TCP/UDP checksums */
|
|
|
+ nicvf_queue_reg_write(nic, NIC_QSET_RQ_GEN_CFG, 0,
|
|
|
+ (BIT(24) | BIT(23) | BIT(21)));
|
|
|
nicvf_config_vlan_stripping(nic, nic->netdev->features);
|
|
|
+ }
|
|
|
|
|
|
/* Enable Receive queue */
|
|
|
memset(&rq_cfg, 0, sizeof(struct rq_cfg));
|