M(NIX_BANDPROF_ALLOC, 0x801d, nix_bandprof_alloc, \
nix_bandprof_alloc_req, nix_bandprof_alloc_rsp) \
M(NIX_BANDPROF_FREE, 0x801e, nix_bandprof_free, nix_bandprof_free_req, \
+ msg_rsp) \
+ M(NIX_CPT_BP_ENABLE, 0x8020, nix_cpt_bp_enable, nix_bp_cfg_req, \
+ nix_bp_cfg_rsp) \
+ M(NIX_CPT_BP_DISABLE, 0x8021, nix_cpt_bp_disable, nix_bp_cfg_req, \
msg_rsp)
/* Messages initiated by AF (range 0xC00 - 0xDFF) */
nix->chan_cnt = 0;
}
+ if (roc_model_is_cn9k())
+ goto exit;
+
+ /* Enable backpressure on CPT if inline inb is enabled */
+ if (enable && roc_nix_inl_inb_is_enabled(roc_nix)) {
+ req = mbox_alloc_msg_nix_cpt_bp_enable(mbox);
+ if (req == NULL)
+ return rc;
+ req->chan_base = 0;
+ req->chan_cnt = 1;
+ req->bpid_per_chan = 0;
+
+ rc = mbox_process_msg(mbox, (void *)&rsp);
+ if (rc)
+ goto exit;
+ } else {
+ req = mbox_alloc_msg_nix_cpt_bp_disable(mbox);
+ if (req == NULL)
+ return rc;
+ req->chan_base = 0;
+ req->chan_cnt = 1;
+ req->bpid_per_chan = 0;
+
+ rc = mbox_process_msg(mbox, (void *)&rsp);
+ if (rc)
+ goto exit;
+ }
+
exit:
return rc;
}