New upstream version 17.11.1
[deb_dpdk.git] / drivers / net / bnxt / bnxt_cpr.c
index 68979bc..cde8adc 100644 (file)
@@ -55,7 +55,7 @@ void bnxt_handle_async_event(struct bnxt *bp,
        case HWRM_ASYNC_EVENT_CMPL_EVENT_ID_LINK_STATUS_CHANGE:
        case HWRM_ASYNC_EVENT_CMPL_EVENT_ID_LINK_SPEED_CHANGE:
        case HWRM_ASYNC_EVENT_CMPL_EVENT_ID_LINK_SPEED_CFG_CHANGE:
-               bnxt_link_update_op(bp->eth_dev, 0);
+               bnxt_link_update_op(bp->eth_dev, 1);
                break;
        default:
                RTE_LOG(DEBUG, PMD, "handle_async_event id = 0x%x\n", event_id);
@@ -165,7 +165,6 @@ int bnxt_alloc_def_cp_ring(struct bnxt *bp)
                goto err_out;
        cpr->cp_doorbell = bp->pdev->mem_resource[2].addr;
        B_CP_DIS_DB(cpr, cpr->cp_raw_cons);
-       bp->grp_info[0].cp_fw_ring_id = cp_ring->fw_ring_id;
        if (BNXT_PF(bp))
                rc = bnxt_hwrm_func_cfg_def_cp(bp);
        else
@@ -183,8 +182,10 @@ void bnxt_free_def_cp_ring(struct bnxt *bp)
                return;
 
        bnxt_free_ring(cpr->cp_ring_struct);
+       cpr->cp_ring_struct = NULL;
        rte_free(cpr->cp_ring_struct);
        rte_free(cpr);
+       bp->def_cp_ring = NULL;
 }
 
 /* For the default completion ring only */