net/bnxt: fix jumbo frame configuration in firmware
[dpdk.git] / drivers / net / bnxt / bnxt_hwrm.c
index 2cba007..4173008 100644 (file)
@@ -692,7 +692,12 @@ int bnxt_hwrm_func_qcaps(struct bnxt *bp)
                        bp->flags |= BNXT_FLAG_NEW_RM;
        }
 
-       return rc;
+       /* On older FW,
+        * bnxt_hwrm_func_resc_qcaps can fail and cause init failure.
+        * But the error can be ignored. Return success.
+        */
+
+       return 0;
 }
 
 /* VNIC cap covers capability of all VNICs. So no need to pass vnic_id */
@@ -901,7 +906,7 @@ int bnxt_hwrm_func_resc_qcaps(struct bnxt *bp)
 
        rc = bnxt_hwrm_send_message(bp, &req, sizeof(req), BNXT_USE_CHIMP_MB);
 
-       HWRM_CHECK_RESULT();
+       HWRM_CHECK_RESULT_SILENT();
 
        if (BNXT_VF(bp)) {
                bp->max_rsscos_ctx = rte_le_to_cpu_16(resp->max_rsscos_ctx);
@@ -2973,8 +2978,7 @@ static int bnxt_hwrm_pf_func_cfg(struct bnxt *bp, int tx_rings)
        }
 
        req.flags = rte_cpu_to_le_32(bp->pf.func_cfg_flags);
-       req.mtu = rte_cpu_to_le_16(RTE_MIN(bp->eth_dev->data->mtu,
-                                          BNXT_MAX_MTU)); //FW adds hdr sizes
+       req.mtu = rte_cpu_to_le_16(BNXT_MAX_MTU);
        req.mru = rte_cpu_to_le_16(BNXT_VNIC_MRU(bp->eth_dev->data->mtu));
        req.num_rsscos_ctxs = rte_cpu_to_le_16(bp->max_rsscos_ctx);
        req.num_stat_ctxs = rte_cpu_to_le_16(bp->max_stat_ctx);