Lines Matching refs:amrr

1526 	iwk_amrr_t *amrr;  in iwk_node_alloc()  local
1528 amrr = kmem_zalloc(sizeof (iwk_amrr_t), KM_SLEEP); in iwk_node_alloc()
1529 if (amrr != NULL) in iwk_node_alloc()
1530 iwk_amrr_init(amrr); in iwk_node_alloc()
1531 return (&amrr->in); in iwk_node_alloc()
2191 iwk_amrr_t *amrr = (iwk_amrr_t *)ic->ic_bss; in iwk_tx_intr() local
2200 amrr->txcnt++; in iwk_tx_intr()
2201 IWK_DBG((IWK_DEBUG_RATECTL, "tx: %d cnt\n", amrr->txcnt)); in iwk_tx_intr()
2203 amrr->retrycnt++; in iwk_tx_intr()
4332 #define is_success(amrr) \ argument
4333 ((amrr)->retrycnt < (amrr)->txcnt / 10)
4334 #define is_failure(amrr) \ argument
4335 ((amrr)->retrycnt > (amrr)->txcnt / 3)
4336 #define is_enough(amrr) \ argument
4337 ((amrr)->txcnt > 100)
4346 #define reset_cnt(amrr) \ argument
4347 { (amrr)->txcnt = (amrr)->retrycnt = 0; }
4353 iwk_amrr_init(iwk_amrr_t *amrr) in iwk_amrr_init() argument
4355 amrr->success = 0; in iwk_amrr_init()
4356 amrr->recovery = 0; in iwk_amrr_init()
4357 amrr->txcnt = amrr->retrycnt = 0; in iwk_amrr_init()
4358 amrr->success_threshold = IWK_AMRR_MIN_SUCCESS_THRESHOLD; in iwk_amrr_init()
4378 iwk_amrr_t *amrr = (iwk_amrr_t *)in; in iwk_amrr_ratectl() local
4381 if (is_success(amrr) && is_enough(amrr)) { in iwk_amrr_ratectl()
4382 amrr->success++; in iwk_amrr_ratectl()
4383 if (amrr->success >= amrr->success_threshold && in iwk_amrr_ratectl()
4385 amrr->recovery = 1; in iwk_amrr_ratectl()
4386 amrr->success = 0; in iwk_amrr_ratectl()
4390 in->in_txrate, amrr->txcnt, amrr->retrycnt)); in iwk_amrr_ratectl()
4393 amrr->recovery = 0; in iwk_amrr_ratectl()
4395 } else if (is_failure(amrr)) { in iwk_amrr_ratectl()
4396 amrr->success = 0; in iwk_amrr_ratectl()
4398 if (amrr->recovery) { in iwk_amrr_ratectl()
4399 amrr->success_threshold++; in iwk_amrr_ratectl()
4400 if (amrr->success_threshold > in iwk_amrr_ratectl()
4402 amrr->success_threshold = in iwk_amrr_ratectl()
4405 amrr->success_threshold = in iwk_amrr_ratectl()
4411 in->in_txrate, amrr->txcnt, amrr->retrycnt)); in iwk_amrr_ratectl()
4414 amrr->recovery = 0; /* paper is incorrect */ in iwk_amrr_ratectl()
4417 if (is_enough(amrr) || need_change) in iwk_amrr_ratectl()
4418 reset_cnt(amrr); in iwk_amrr_ratectl()