Lines Matching defs:win
31 #define RATE_MAX_WINDOW 62 /* # tx in history win */
214 il4965_rs_rate_scale_clear_win(struct il_rate_scale_data *win)
216 win->data = 0;
217 win->success_counter = 0;
218 win->success_ratio = IL_INVALID_VALUE;
219 win->counter = 0;
220 win->average_tpt = IL_INVALID_VALUE;
221 win->stamp = 0;
397 * il4965_rs_collect_tx_data - Update the success/failure sliding win
399 * We keep a sliding win of the last 62 packets transmitted
400 * at this rate. win->data contains the bitmask of successful
407 struct il_rate_scale_data *win = NULL;
414 /* Select win for current tx bit rate */
415 win = &(tbl->win[scale_idx]);
422 * history win; anything older isn't really relevant any more.
423 * If we have filled up the sliding win, drop the oldest attempt;
429 if (win->counter >= RATE_MAX_WINDOW) {
432 win->counter = RATE_MAX_WINDOW - 1;
434 if (win->data & mask) {
435 win->data &= ~mask;
436 win->success_counter--;
441 win->counter++;
444 win->data <<= 1;
448 win->success_counter++;
449 win->data |= 0x1;
457 if (win->counter > 0)
458 win->success_ratio =
459 128 * (100 * win->success_counter) / win->counter;
461 win->success_ratio = IL_INVALID_VALUE;
463 fail_count = win->counter - win->success_counter;
467 win->success_counter >= RATE_MIN_SUCCESS_TH)
468 win->average_tpt = (win->success_ratio * tpt + 64) / 128;
470 win->average_tpt = IL_INVALID_VALUE;
472 /* Tag this win as having been updated */
473 win->stamp = jiffies;
808 D_RATE("get frame ack response, update rate scale win\n");
1071 s32 active_sr = active_tbl->win[idx].success_ratio;
1266 struct il_rate_scale_data *win = &(tbl->win[idx]);
1293 if (win->success_ratio >= IL_RS_GOOD_RATIO)
1386 struct il_rate_scale_data *win = &(tbl->win[idx]);
1411 if (win->success_ratio >= IL_RS_GOOD_RATIO)
1509 struct il_rate_scale_data *win = &(tbl->win[idx]);
1531 if (win->success_ratio >= IL_RS_GOOD_RATIO)
1687 D_RATE("LQ: stay in table clear win\n");
1691 win
1701 il4965_rs_rate_scale_clear_win(&(tbl->win[i]));
1737 struct il_rate_scale_data *win = NULL;
1834 /* Get expected throughput table and history win for current rate */
1844 win = &(tbl->win[idx]);
1848 win = &(tbl->win[idx]);
1857 fail_count = win->counter - win->success_counter;
1859 win->success_counter < RATE_MIN_SUCCESS_TH) {
1861 win->success_counter, win->counter, idx);
1864 win->average_tpt = IL_INVALID_VALUE;
1874 if (win->average_tpt !=
1875 ((win->success_ratio * tbl->expected_tpt[idx] + 64) / 128)) {
1877 win->average_tpt =
1878 ((win->success_ratio * tbl->expected_tpt[idx] + 64) / 128);
1886 if (win->average_tpt > lq_sta->last_tpt) {
1890 win->success_ratio, win->average_tpt,
1898 current_tpt = win->average_tpt;
1905 win->success_ratio, win->average_tpt,
1942 sr = win->success_ratio;
1945 current_tpt = win->average_tpt;
1947 low_tpt = tbl->win[low].average_tpt;
1949 high_tpt = tbl->win[high].average_tpt;
2043 if (!update_lq && !done_search && !lq_sta->stay_in_tbl && win->counter) {
2063 il4965_rs_rate_scale_clear_win(&(tbl->win[i]));
2260 D_RATE("create station rate scale win\n");
2288 win[i]);
2295 win[i]);
2703 lq_sta->lq_info[i].win[j].counter,
2704 lq_sta->lq_info[i].win[j].success_counter,
2705 lq_sta->lq_info[i].win[j].success_ratio);