cong_notif_cfg.units = DPNI_CONGESTION_UNIT_FRAMES;
cong_notif_cfg.threshold_entry = nb_tx_desc;
/* Notify that the queue is not congested when the data in
- * the queue is below this thershold.
+ * the queue is below this thershold.(90% of value)
*/
- cong_notif_cfg.threshold_exit = nb_tx_desc - 24;
+ cong_notif_cfg.threshold_exit = (nb_tx_desc * 9) / 10;
cong_notif_cfg.message_ctx = 0;
cong_notif_cfg.message_iova =
(size_t)DPAA2_VADDR_TO_IOVA(dpaa2_q->cscn);
struct rte_eth_rxq_info *qinfo)
{
struct dpaa2_queue *rxq;
+ struct dpaa2_dev_priv *priv = dev->data->dev_private;
+ struct fsl_mc_io *dpni = (struct fsl_mc_io *)dev->process_private;
+ uint16_t max_frame_length;
rxq = (struct dpaa2_queue *)dev->data->rx_queues[queue_id];
qinfo->mp = rxq->mb_pool;
qinfo->scattered_rx = dev->data->scattered_rx;
qinfo->nb_desc = rxq->nb_desc;
+ if (dpni_get_max_frame_length(dpni, CMD_PRI_LOW, priv->token,
+ &max_frame_length) == 0)
+ qinfo->rx_buf_size = max_frame_length;
qinfo->conf.rx_free_thresh = 1;
qinfo->conf.rx_drop_en = 1;