Lines Matching refs:rba
538 struct iwl_rb_allocator *rba = &trans_pcie->rba; in iwl_pcie_rx_allocator() local
540 int pending = atomic_read(&rba->req_pending); in iwl_pcie_rx_allocator()
545 spin_lock(&rba->lock); in iwl_pcie_rx_allocator()
547 list_replace_init(&rba->rbd_empty, &local_empty); in iwl_pcie_rx_allocator()
548 spin_unlock(&rba->lock); in iwl_pcie_rx_allocator()
595 atomic_dec(&rba->req_pending); in iwl_pcie_rx_allocator()
599 pending = atomic_read(&rba->req_pending); in iwl_pcie_rx_allocator()
606 spin_lock(&rba->lock); in iwl_pcie_rx_allocator()
608 list_splice_tail(&local_allocated, &rba->rbd_allocated); in iwl_pcie_rx_allocator()
610 list_splice_tail_init(&rba->rbd_empty, &local_empty); in iwl_pcie_rx_allocator()
611 spin_unlock(&rba->lock); in iwl_pcie_rx_allocator()
613 atomic_inc(&rba->req_ready); in iwl_pcie_rx_allocator()
617 spin_lock(&rba->lock); in iwl_pcie_rx_allocator()
619 list_splice_tail(&local_empty, &rba->rbd_empty); in iwl_pcie_rx_allocator()
620 spin_unlock(&rba->lock); in iwl_pcie_rx_allocator()
637 struct iwl_rb_allocator *rba = &trans_pcie->rba; in iwl_pcie_rx_allocator_get() local
650 if (atomic_dec_if_positive(&rba->req_ready) < 0) in iwl_pcie_rx_allocator_get()
653 spin_lock(&rba->lock); in iwl_pcie_rx_allocator_get()
657 list_first_entry(&rba->rbd_allocated, in iwl_pcie_rx_allocator_get()
662 spin_unlock(&rba->lock); in iwl_pcie_rx_allocator_get()
673 container_of(rba_p, struct iwl_trans_pcie, rba); in iwl_pcie_rx_allocator_work()
808 struct iwl_rb_allocator *rba = &trans_pcie->rba; in iwl_pcie_rx_alloc() local
822 spin_lock_init(&rba->lock); in iwl_pcie_rx_alloc()
1040 struct iwl_rb_allocator *rba = &trans_pcie->rba; in _iwl_pcie_rx_init() local
1050 cancel_work_sync(&rba->rx_alloc); in _iwl_pcie_rx_init()
1052 spin_lock(&rba->lock); in _iwl_pcie_rx_init()
1053 atomic_set(&rba->req_pending, 0); in _iwl_pcie_rx_init()
1054 atomic_set(&rba->req_ready, 0); in _iwl_pcie_rx_init()
1055 INIT_LIST_HEAD(&rba->rbd_allocated); in _iwl_pcie_rx_init()
1056 INIT_LIST_HEAD(&rba->rbd_empty); in _iwl_pcie_rx_init()
1057 spin_unlock(&rba->lock); in _iwl_pcie_rx_init()
1102 list_add(&rxb->list, &rba->rbd_empty); in _iwl_pcie_rx_init()
1152 struct iwl_rb_allocator *rba = &trans_pcie->rba; in iwl_pcie_rx_free() local
1167 cancel_work_sync(&rba->rx_alloc); in iwl_pcie_rx_free()
1192 struct iwl_rb_allocator *rba) in iwl_pcie_rx_move_to_allocator() argument
1194 spin_lock(&rba->lock); in iwl_pcie_rx_move_to_allocator()
1195 list_splice_tail_init(&rxq->rx_used, &rba->rbd_empty); in iwl_pcie_rx_move_to_allocator()
1196 spin_unlock(&rba->lock); in iwl_pcie_rx_move_to_allocator()
1210 struct iwl_rb_allocator *rba = &trans_pcie->rba; in iwl_pcie_rx_reuse_rbd() local
1230 iwl_pcie_rx_move_to_allocator(rxq, rba); in iwl_pcie_rx_reuse_rbd()
1232 atomic_inc(&rba->req_pending); in iwl_pcie_rx_reuse_rbd()
1233 queue_work(rba->alloc_wq, &rba->rx_alloc); in iwl_pcie_rx_reuse_rbd()
1456 struct iwl_rb_allocator *rba = &trans_pcie->rba; in iwl_pcie_rx_handle() local
1460 atomic_read(&trans_pcie->rba.req_pending) * in iwl_pcie_rx_handle()
1465 iwl_pcie_rx_move_to_allocator(rxq, rba); in iwl_pcie_rx_handle()
1494 iwl_pcie_rx_move_to_allocator(rxq, rba); in iwl_pcie_rx_handle()