Lines Matching refs:budget
130 int cpsw_tx_mq_poll(struct napi_struct *napi_tx, int budget)
144 if (unlikely(txv->budget > budget - num_tx))
145 cur_budget = budget - num_tx;
147 cur_budget = txv->budget;
150 if (num_tx >= budget)
154 if (num_tx < budget) {
162 int cpsw_tx_poll(struct napi_struct *napi_tx, int budget)
167 num_tx = cpdma_chan_process(cpsw->txv[0].ch, budget);
168 if (num_tx < budget) {
180 int cpsw_rx_mq_poll(struct napi_struct *napi_rx, int budget)
194 if (unlikely(rxv->budget > budget - num_rx))
195 cur_budget = budget - num_rx;
197 cur_budget = rxv->budget;
200 if (num_rx >= budget)
204 if (num_rx < budget) {
212 int cpsw_rx_poll(struct napi_struct *napi_rx, int budget)
217 num_rx = cpdma_chan_process(cpsw->rxv[0].ch, budget);
218 if (num_rx < budget) {
352 int budget, bigest_rate_ch = 0;
390 /* split tx weight/budget */
391 budget = NAPI_POLL_WEIGHT;
395 txv[i].budget = (ch_rate * NAPI_POLL_WEIGHT) / max_rate;
396 if (!txv[i].budget)
397 txv[i].budget++;
408 txv[i].budget = ch_budget;
414 budget -= txv[i].budget;
417 if (budget)
418 txv[bigest_rate_ch].budget += budget;
420 /* split rx budget */
421 budget = NAPI_POLL_WEIGHT;
422 ch_budget = budget / cpsw->rx_ch_num;
424 cpsw->rxv[i].budget = ch_budget;
425 budget -= ch_budget;
428 if (budget)
429 cpsw->rxv[0].budget += budget;