Quellcode durchsuchen

Merge "qcacld-3.0: Fix compilation errors when enable OL_TX_SCHED_RR" into wlan-cld3.driver.lnx.1.1-dev

Service qcabuildsw vor 8 Jahren
Ursprung
Commit
ebec307da5
1 geänderte Dateien mit 69 neuen und 21 gelöschten Zeilen
  1. 69 21
      core/dp/txrx/ol_tx_sched.c

+ 69 - 21
core/dp/txrx/ol_tx_sched.c

@@ -204,13 +204,13 @@ ol_tx_sched_select_batch_rr(
 	struct ol_tx_sched_rr_t *scheduler = pdev->tx_sched.scheduler;
 	struct ol_tx_active_queues_in_tid_t *txq_queue;
 	struct ol_tx_frms_queue_t *next_tq;
-	u_int16_t frames, used_credits, tx_limit, tx_limit_flag = 0;
+	u_int16_t frames, used_credits = 0, tx_limit, tx_limit_flag = 0;
 	int bytes;
 
 	TX_SCHED_DEBUG_PRINT("Enter %s\n", __func__);
 
 	if (TAILQ_EMPTY(&scheduler->tx_active_tids_list))
-		return;
+		return used_credits;
 
 	txq_queue = TAILQ_FIRST(&scheduler->tx_active_tids_list);
 
@@ -222,12 +222,12 @@ ol_tx_sched_select_batch_rr(
 
 	credit = OL_A_MIN(credit, TX_SCH_MAX_CREDIT_FOR_THIS_TID(next_tq));
 	frames = next_tq->frms; /* download as many frames as credit allows */
-	tx_limit = ol_tx_bad_peer_dequeue_check(txq,
-					category->specs.send_limit,
+	tx_limit = ol_tx_bad_peer_dequeue_check(next_tq,
+					frames,
 					&tx_limit_flag);
 	frames = ol_tx_dequeue(
-			pdev, txq, &sctx->head, tx_limit, &credit, &bytes);
-	ol_tx_bad_peer_update_tx_limit(pdev, txq, frames, tx_limit_flag);
+			pdev, next_tq, &sctx->head, tx_limit, &credit, &bytes);
+	ol_tx_bad_peer_update_tx_limit(pdev, next_tq, frames, tx_limit_flag);
 
 	used_credits = credit;
 	txq_queue->frms -= frames;
@@ -445,6 +445,36 @@ ol_txrx_set_wmm_param(ol_txrx_pdev_handle data_pdev,
 		  "Dummy function when OL_TX_SCHED_RR is enabled\n");
 }
 
+/**
+ * ol_tx_sched_stats_display() - tx sched stats display
+ * @pdev: Pointer to the PDEV structure.
+ *
+ * Return: none.
+ */
+void ol_tx_sched_stats_display(struct ol_txrx_pdev_t *pdev)
+{
+}
+
+/**
+ * ol_tx_sched_cur_state_display() - tx sched cur stat display
+ * @pdev: Pointer to the PDEV structure.
+ *
+ * Return: none.
+ */
+void ol_tx_sched_cur_state_display(struct ol_txrx_pdev_t *pdev)
+{
+}
+
+/**
+ * ol_tx_sched_cur_state_display() - reset tx sched stats
+ * @pdev: Pointer to the PDEV structure.
+ *
+ * Return: none.
+ */
+void ol_tx_sched_stats_clear(struct ol_txrx_pdev_t *pdev)
+{
+}
+
 #endif /* OL_TX_SCHED == OL_TX_SCHED_RR */
 
 /*--- advanced scheduler ----------------------------------------------------*/
@@ -1088,6 +1118,39 @@ ol_txrx_set_wmm_param(ol_txrx_pdev_handle data_pdev,
 	}
 }
 
+/**
+ * ol_tx_sched_stats_display() - tx sched stats display
+ * @pdev: Pointer to the PDEV structure.
+ *
+ * Return: none.
+ */
+void ol_tx_sched_stats_display(struct ol_txrx_pdev_t *pdev)
+{
+    OL_TX_SCHED_WRR_ADV_CAT_STAT_DUMP(pdev->tx_sched.scheduler);
+}
+
+/**
+ * ol_tx_sched_cur_state_display() - tx sched cur stat display
+ * @pdev: Pointer to the PDEV structure.
+ *
+ * Return: none.
+ */
+void ol_tx_sched_cur_state_display(struct ol_txrx_pdev_t *pdev)
+{
+    OL_TX_SCHED_WRR_ADV_CAT_CUR_STATE_DUMP(pdev->tx_sched.scheduler);
+}
+
+/**
+ * ol_tx_sched_cur_state_display() - reset tx sched stats
+ * @pdev: Pointer to the PDEV structure.
+ *
+ * Return: none.
+ */
+void ol_tx_sched_stats_clear(struct ol_txrx_pdev_t *pdev)
+{
+    OL_TX_SCHED_WRR_ADV_CAT_STAT_CLEAR(pdev->tx_sched.scheduler);
+}
+
 #endif /* OL_TX_SCHED == OL_TX_SCHED_WRR_ADV */
 
 /*--- congestion control discard --------------------------------------------*/
@@ -1462,19 +1525,4 @@ ol_tx_sched_log(struct ol_txrx_pdev_t *pdev)
 
 #endif /* defined(DEBUG_HL_LOGGING) */
 
-void ol_tx_sched_stats_display(struct ol_txrx_pdev_t *pdev)
-{
-	OL_TX_SCHED_WRR_ADV_CAT_STAT_DUMP(pdev->tx_sched.scheduler);
-}
-
-void ol_tx_sched_cur_state_display(struct ol_txrx_pdev_t *pdev)
-{
-	OL_TX_SCHED_WRR_ADV_CAT_CUR_STATE_DUMP(pdev->tx_sched.scheduler);
-}
-
-void ol_tx_sched_stats_clear(struct ol_txrx_pdev_t *pdev)
-{
-	OL_TX_SCHED_WRR_ADV_CAT_STAT_CLEAR(pdev->tx_sched.scheduler);
-}
-
 #endif /* defined(CONFIG_HL_SUPPORT) */