| /linux/drivers/usb/gadget/function/ |
| H A D | uvc_queue.c | 46 struct uvc_video_queue *queue = vb2_get_drv_priv(vq); in uvc_queue_setup() local 47 struct uvc_video *video = container_of(queue, struct uvc_video, queue); in uvc_queue_setup() 63 struct uvc_video_queue *queue = vb2_get_drv_priv(vb->vb2_queue); in uvc_buffer_prepare() local 64 struct uvc_video *video = container_of(queue, struct uvc_video, queue); in uvc_buffer_prepare() 74 if (unlikely(queue->flags & UVC_QUEUE_DISCONNECTED)) in uvc_buffer_prepare() 78 if (queue->use_sg) { in uvc_buffer_prepare() 107 struct uvc_video_queue *queue = vb2_get_drv_priv(vb->vb2_queue); in uvc_buffer_queue() local 112 spin_lock_irqsave(&queue->irqlock, flags); in uvc_buffer_queue() 114 if (likely(!(queue->flags & UVC_QUEUE_DISCONNECTED))) { in uvc_buffer_queue() 115 list_add_tail(&buf->queue, &queue->irqqueue); in uvc_buffer_queue() [all …]
|
| /linux/drivers/net/wireless/st/cw1200/ |
| H A D | queue.c | 27 static inline void __cw1200_queue_lock(struct cw1200_queue *queue) in __cw1200_queue_lock() argument 29 struct cw1200_queue_stats *stats = queue->stats; in __cw1200_queue_lock() 30 if (queue->tx_locked_cnt++ == 0) { in __cw1200_queue_lock() 32 queue->queue_id); in __cw1200_queue_lock() 33 ieee80211_stop_queue(stats->priv->hw, queue->queue_id); in __cw1200_queue_lock() 37 static inline void __cw1200_queue_unlock(struct cw1200_queue *queue) in __cw1200_queue_unlock() argument 39 struct cw1200_queue_stats *stats = queue->stats; in __cw1200_queue_unlock() 40 BUG_ON(!queue->tx_locked_cnt); in __cw1200_queue_unlock() 41 if (--queue->tx_locked_cnt == 0) { in __cw1200_queue_unlock() 43 queue->queue_id); in __cw1200_queue_unlock() [all …]
|
| /linux/drivers/net/wireless/broadcom/b43legacy/ |
| H A D | pio.c | 22 static void tx_start(struct b43legacy_pioqueue *queue) in tx_start() argument 24 b43legacy_pio_write(queue, B43legacy_PIO_TXCTL, in tx_start() 28 static void tx_octet(struct b43legacy_pioqueue *queue, in tx_octet() argument 31 if (queue->need_workarounds) { in tx_octet() 32 b43legacy_pio_write(queue, B43legacy_PIO_TXDATA, octet); in tx_octet() 33 b43legacy_pio_write(queue, B43legacy_PIO_TXCTL, in tx_octet() 36 b43legacy_pio_write(queue, B43legacy_PIO_TXCTL, in tx_octet() 38 b43legacy_pio_write(queue, B43legacy_PIO_TXDATA, octet); in tx_octet() 63 static void tx_data(struct b43legacy_pioqueue *queue, in tx_data() argument 71 if (queue->need_workarounds) { in tx_data() [all …]
|
| /linux/drivers/net/xen-netback/ |
| H A D | rx.c | 42 static void xenvif_update_needed_slots(struct xenvif_queue *queue, in xenvif_update_needed_slots() argument 55 WRITE_ONCE(queue->rx_slots_needed, needed); in xenvif_update_needed_slots() 58 static bool xenvif_rx_ring_slots_available(struct xenvif_queue *queue) in xenvif_rx_ring_slots_available() argument 63 needed = READ_ONCE(queue->rx_slots_needed); in xenvif_rx_ring_slots_available() 68 prod = queue->rx.sring->req_prod; in xenvif_rx_ring_slots_available() 69 cons = queue->rx.req_cons; in xenvif_rx_ring_slots_available() 74 queue->rx.sring->req_event = prod + 1; in xenvif_rx_ring_slots_available() 80 } while (queue->rx.sring->req_prod != prod); in xenvif_rx_ring_slots_available() 85 bool xenvif_rx_queue_tail(struct xenvif_queue *queue, struct sk_buff *skb) in xenvif_rx_queue_tail() argument 90 spin_lock_irqsave(&queue->rx_queue.lock, flags); in xenvif_rx_queue_tail() [all …]
|
| H A D | netback.c | 107 static void xenvif_idx_release(struct xenvif_queue *queue, u16 pending_idx, 110 static void make_tx_response(struct xenvif_queue *queue, 115 static void xenvif_idx_unmap(struct xenvif_queue *queue, u16 pending_idx); 117 static inline int tx_work_todo(struct xenvif_queue *queue); 119 static inline unsigned long idx_to_pfn(struct xenvif_queue *queue, in idx_to_pfn() argument 122 return page_to_pfn(queue->mmap_pages[idx]); in idx_to_pfn() 125 static inline unsigned long idx_to_kaddr(struct xenvif_queue *queue, in idx_to_kaddr() argument 128 return (unsigned long)pfn_to_kaddr(idx_to_pfn(queue, idx)); in idx_to_kaddr() 161 void xenvif_kick_thread(struct xenvif_queue *queue) in xenvif_kick_thread() argument 163 wake_up(&queue->wq); in xenvif_kick_thread() [all …]
|
| H A D | interface.c | 52 void xenvif_skb_zerocopy_prepare(struct xenvif_queue *queue, in xenvif_skb_zerocopy_prepare() argument 56 atomic_inc(&queue->inflight_packets); in xenvif_skb_zerocopy_prepare() 59 void xenvif_skb_zerocopy_complete(struct xenvif_queue *queue) in xenvif_skb_zerocopy_complete() argument 61 atomic_dec(&queue->inflight_packets); in xenvif_skb_zerocopy_complete() 67 wake_up(&queue->dealloc_wq); in xenvif_skb_zerocopy_complete() 77 static bool xenvif_handle_tx_interrupt(struct xenvif_queue *queue) in xenvif_handle_tx_interrupt() argument 81 rc = RING_HAS_UNCONSUMED_REQUESTS(&queue->tx); in xenvif_handle_tx_interrupt() 83 napi_schedule(&queue->napi); in xenvif_handle_tx_interrupt() 89 struct xenvif_queue *queue = dev_id; in xenvif_tx_interrupt() local 92 old = atomic_fetch_or(NETBK_TX_EOI, &queue->eoi_pending); in xenvif_tx_interrupt() [all …]
|
| /linux/drivers/iio/buffer/ |
| H A D | industrialio-buffer-dma.c | 102 struct iio_dma_buffer_queue *queue = block->queue; in iio_buffer_block_release() local 107 dma_free_coherent(queue->dev, PAGE_ALIGN(block->size), in iio_buffer_block_release() 110 atomic_dec(&queue->num_dmabufs); in iio_buffer_block_release() 113 iio_buffer_put(&queue->buffer); in iio_buffer_block_release() 173 iio_dma_buffer_alloc_block(struct iio_dma_buffer_queue *queue, size_t size, in iio_dma_buffer_alloc_block() argument 182 block->vaddr = dma_alloc_coherent(queue->dev, PAGE_ALIGN(size), in iio_dma_buffer_alloc_block() 191 block->queue = queue; in iio_dma_buffer_alloc_block() 195 iio_buffer_get(&queue->buffer); in iio_dma_buffer_alloc_block() 198 atomic_inc(&queue->num_dmabufs); in iio_dma_buffer_alloc_block() 209 static void iio_dma_buffer_queue_wake(struct iio_dma_buffer_queue *queue) in iio_dma_buffer_queue_wake() argument [all …]
|
| /linux/drivers/nvme/target/ |
| H A D | tcp.c | 109 struct nvmet_tcp_queue *queue; member 218 static inline u16 nvmet_tcp_cmd_tag(struct nvmet_tcp_queue *queue, in nvmet_tcp_cmd_tag() argument 221 if (unlikely(!queue->nr_cmds)) { in nvmet_tcp_cmd_tag() 226 return cmd - queue->cmds; in nvmet_tcp_cmd_tag() 254 nvmet_tcp_get_cmd(struct nvmet_tcp_queue *queue) in nvmet_tcp_get_cmd() argument 258 cmd = list_first_entry_or_null(&queue->free_list, in nvmet_tcp_get_cmd() 274 if (unlikely(cmd == &cmd->queue->connect)) in nvmet_tcp_put_cmd() 277 list_add_tail(&cmd->entry, &cmd->queue->free_list); in nvmet_tcp_put_cmd() 280 static inline int queue_cpu(struct nvmet_tcp_queue *queue) in queue_cpu() argument 282 return queue->sock->sk->sk_incoming_cpu; in queue_cpu() [all …]
|
| H A D | rdma.c | 52 struct nvmet_rdma_queue *queue; member 66 struct nvmet_rdma_queue *queue; member 172 static void nvmet_rdma_queue_disconnect(struct nvmet_rdma_queue *queue); 213 nvmet_rdma_get_rsp(struct nvmet_rdma_queue *queue) in nvmet_rdma_get_rsp() argument 218 tag = sbitmap_get(&queue->rsp_tags); in nvmet_rdma_get_rsp() 220 rsp = &queue->rsps[tag]; in nvmet_rdma_get_rsp() 228 ret = nvmet_rdma_alloc_rsp(queue->dev, rsp, in nvmet_rdma_get_rsp() 243 nvmet_rdma_free_rsp(rsp->queue->dev, rsp); in nvmet_rdma_put_rsp() 248 sbitmap_clear_bit(&rsp->queue->rsp_tags, rsp->tag); in nvmet_rdma_put_rsp() 448 nvmet_rdma_alloc_rsps(struct nvmet_rdma_queue *queue) in nvmet_rdma_alloc_rsps() argument [all …]
|
| /linux/drivers/misc/genwqe/ |
| H A D | card_ddcb.c | 82 static int queue_empty(struct ddcb_queue *queue) in queue_empty() argument 84 return queue->ddcb_next == queue->ddcb_act; in queue_empty() 87 static int queue_enqueued_ddcbs(struct ddcb_queue *queue) in queue_enqueued_ddcbs() argument 89 if (queue->ddcb_next >= queue->ddcb_act) in queue_enqueued_ddcbs() 90 return queue->ddcb_next - queue->ddcb_act; in queue_enqueued_ddcbs() 92 return queue->ddcb_max - (queue->ddcb_act - queue->ddcb_next); in queue_enqueued_ddcbs() 95 static int queue_free_ddcbs(struct ddcb_queue *queue) in queue_free_ddcbs() argument 97 int free_ddcbs = queue->ddcb_max - queue_enqueued_ddcbs(queue) - 1; in queue_free_ddcbs() 163 static void print_ddcb_info(struct genwqe_dev *cd, struct ddcb_queue *queue) in print_ddcb_info() argument 174 cd->card_idx, queue->ddcb_act, queue->ddcb_next); in print_ddcb_info() [all …]
|
| /linux/drivers/nvme/host/ |
| H A D | tcp.c | 69 struct nvme_tcp_queue *queue; member 179 static int nvme_tcp_try_send(struct nvme_tcp_queue *queue); 188 static void nvme_tcp_reclassify_socket(struct nvme_tcp_queue *queue) in nvme_tcp_reclassify_socket() argument 190 struct sock *sk = queue->sock->sk; in nvme_tcp_reclassify_socket() 198 &queue->nvme_tcp_slock_key, in nvme_tcp_reclassify_socket() 200 &queue->nvme_tcp_sk_key); in nvme_tcp_reclassify_socket() 204 &queue->nvme_tcp_slock_key, in nvme_tcp_reclassify_socket() 206 &queue->nvme_tcp_sk_key); in nvme_tcp_reclassify_socket() 219 static inline int nvme_tcp_queue_id(struct nvme_tcp_queue *queue) in nvme_tcp_queue_id() argument 221 return queue - queue->ctrl->queues; in nvme_tcp_queue_id() [all …]
|
| H A D | rdma.c | 81 struct nvme_rdma_queue *queue; member 112 struct nvme_rdma_queue *queue; member 167 static inline int nvme_rdma_queue_idx(struct nvme_rdma_queue *queue) in nvme_rdma_queue_idx() argument 169 return queue - queue->ctrl->queues; in nvme_rdma_queue_idx() 172 static bool nvme_rdma_poll_queue(struct nvme_rdma_queue *queue) in nvme_rdma_poll_queue() argument 174 return nvme_rdma_queue_idx(queue) > in nvme_rdma_poll_queue() 175 queue->ctrl->io_queues[HCTX_TYPE_DEFAULT] + in nvme_rdma_poll_queue() 176 queue->ctrl->io_queues[HCTX_TYPE_READ]; in nvme_rdma_poll_queue() 179 static inline size_t nvme_rdma_inline_data_size(struct nvme_rdma_queue *queue) in nvme_rdma_inline_data_size() argument 181 return queue->cmnd_capsule_len - sizeof(struct nvme_command); in nvme_rdma_inline_data_size() [all …]
|
| /linux/drivers/net/ |
| H A D | xen-netfront.c | 218 static struct sk_buff *xennet_get_rx_skb(struct netfront_queue *queue, in xennet_get_rx_skb() argument 222 struct sk_buff *skb = queue->rx_skbs[i]; in xennet_get_rx_skb() 223 queue->rx_skbs[i] = NULL; in xennet_get_rx_skb() 227 static grant_ref_t xennet_get_rx_ref(struct netfront_queue *queue, in xennet_get_rx_ref() argument 231 grant_ref_t ref = queue->grant_rx_ref[i]; in xennet_get_rx_ref() 232 queue->grant_rx_ref[i] = INVALID_GRANT_REF; in xennet_get_rx_ref() 248 struct netfront_queue *queue = timer_container_of(queue, t, in rx_refill_timeout() local 250 napi_schedule(&queue->napi); in rx_refill_timeout() 253 static int netfront_tx_slot_available(struct netfront_queue *queue) in netfront_tx_slot_available() argument 255 return (queue->tx.req_prod_pvt - queue->tx.rsp_cons) < in netfront_tx_slot_available() [all …]
|
| H A D | eql.c | 142 static void eql_kill_one_slave(slave_queue_t *queue, slave_t *slave); 149 spin_lock(&eql->queue.lock); in eql_timer() 150 head = &eql->queue.all_slaves; in eql_timer() 159 eql_kill_one_slave(&eql->queue, slave); in eql_timer() 163 spin_unlock(&eql->queue.lock); in eql_timer() 186 spin_lock_init(&eql->queue.lock); in eql_setup() 187 INIT_LIST_HEAD(&eql->queue.all_slaves); in eql_setup() 188 eql->queue.master_dev = dev; in eql_setup() 213 BUG_ON(!list_empty(&eql->queue.all_slaves)); in eql_open() 223 static void eql_kill_one_slave(slave_queue_t *queue, slave_t *slave) in eql_kill_one_slave() argument [all …]
|
| /linux/drivers/net/wireguard/ |
| H A D | queueing.c | 25 int wg_packet_queue_init(struct crypt_queue *queue, work_func_t function, in wg_packet_queue_init() argument 30 memset(queue, 0, sizeof(*queue)); in wg_packet_queue_init() 31 queue->last_cpu = -1; in wg_packet_queue_init() 32 ret = ptr_ring_init(&queue->ring, len, GFP_KERNEL); in wg_packet_queue_init() 35 queue->worker = wg_packet_percpu_multicore_worker_alloc(function, queue); in wg_packet_queue_init() 36 if (!queue->worker) { in wg_packet_queue_init() 37 ptr_ring_cleanup(&queue->ring, NULL); in wg_packet_queue_init() 43 void wg_packet_queue_free(struct crypt_queue *queue, bool purge) in wg_packet_queue_free() argument 45 free_percpu(queue->worker); in wg_packet_queue_free() 46 WARN_ON(!purge && !__ptr_ring_empty(&queue->ring)); in wg_packet_queue_free() [all …]
|
| /linux/drivers/net/wireless/ralink/rt2x00/ |
| H A D | rt2x00queue.c | 25 struct data_queue *queue = entry->queue; in rt2x00queue_alloc_rxskb() local 26 struct rt2x00_dev *rt2x00dev = queue->rt2x00dev; in rt2x00queue_alloc_rxskb() 37 frame_size = queue->data_size + queue->desc_size + queue->winfo_size; in rt2x00queue_alloc_rxskb() 95 struct device *dev = entry->queue->rt2x00dev->dev; in rt2x00queue_map_txskb() 112 struct device *dev = entry->queue->rt2x00dev->dev; in rt2x00queue_unmap_skb() 488 struct rt2x00_dev *rt2x00dev = entry->queue->rt2x00dev; in rt2x00queue_write_tx_data() 500 entry->queue->qid, DRV_PROJECT); in rt2x00queue_write_tx_data() 529 struct data_queue *queue = entry->queue; in rt2x00queue_write_tx_descriptor() local 531 queue->rt2x00dev->ops->lib->write_tx_desc(entry, txdesc); in rt2x00queue_write_tx_descriptor() 537 rt2x00debug_dump_frame(queue->rt2x00dev, DUMP_FRAME_TX, entry); in rt2x00queue_write_tx_descriptor() [all …]
|
| H A D | rt2x00mmio.c | 51 struct data_queue *queue = rt2x00dev->rx; in rt2x00mmio_rxdone() local 58 entry = rt2x00queue_get_entry(queue, Q_INDEX); in rt2x00mmio_rxdone() 69 skbdesc->desc_len = entry->queue->desc_size; in rt2x00mmio_rxdone() 88 void rt2x00mmio_flush_queue(struct data_queue *queue, bool drop) in rt2x00mmio_flush_queue() argument 92 for (i = 0; !rt2x00queue_empty(queue) && i < 10; i++) in rt2x00mmio_flush_queue() 101 struct data_queue *queue) in rt2x00mmio_alloc_queue_dma() argument 112 queue->limit * queue->desc_size, &dma, in rt2x00mmio_alloc_queue_dma() 120 for (i = 0; i < queue->limit; i++) { in rt2x00mmio_alloc_queue_dma() 121 entry_priv = queue->entries[i].priv_data; in rt2x00mmio_alloc_queue_dma() 122 entry_priv->desc = addr + i * queue->desc_size; in rt2x00mmio_alloc_queue_dma() [all …]
|
| /linux/drivers/gpu/drm/amd/amdgpu/ |
| H A D | amdgpu_userq.c | 152 struct amdgpu_usermode_queue *queue = in amdgpu_userq_hang_detect_work() local 160 amdgpu_userq_mgr_reset_work(&queue->userq_mgr->reset_work); in amdgpu_userq_hang_detect_work() 167 void amdgpu_userq_start_hang_detect_work(struct amdgpu_usermode_queue *queue) in amdgpu_userq_start_hang_detect_work() argument 172 adev = queue->userq_mgr->adev; in amdgpu_userq_start_hang_detect_work() 174 switch (queue->queue_type) { in amdgpu_userq_start_hang_detect_work() 189 queue_delayed_work(adev->reset_domain->wq, &queue->hang_detect_work, in amdgpu_userq_start_hang_detect_work() 196 struct amdgpu_usermode_queue *queue; in amdgpu_userq_process_fence_irq() local 201 queue = xa_load(xa, doorbell); in amdgpu_userq_process_fence_irq() 202 if (queue) { in amdgpu_userq_process_fence_irq() 203 r = amdgpu_userq_fence_driver_process(queue->fence_drv); in amdgpu_userq_process_fence_irq() [all …]
|
| H A D | mes_userqueue.c | 36 struct amdgpu_usermode_queue *queue, in mes_userq_create_wptr_mapping() argument 40 struct amdgpu_userq_obj *wptr_obj = &queue->wptr_obj; in mes_userq_create_wptr_mapping() 42 struct amdgpu_vm *vm = queue->vm; in mes_userq_create_wptr_mapping() 86 queue->wptr_obj.gpu_addr = amdgpu_bo_gpu_offset(wptr_obj->obj); in mes_userq_create_wptr_mapping() 113 static int mes_userq_map(struct amdgpu_usermode_queue *queue) in mes_userq_map() argument 115 struct amdgpu_userq_mgr *uq_mgr = queue->userq_mgr; in mes_userq_map() 117 struct amdgpu_userq_obj *ctx = &queue->fw_obj; in mes_userq_map() 118 struct amdgpu_mqd_prop *userq_props = queue->userq_prop; in mes_userq_map() 135 queue_input.gang_global_priority_level = convert_to_mes_priority(queue->priority); in mes_userq_map() 137 queue_input.process_id = queue->vm->pasid; in mes_userq_map() [all …]
|
| /linux/drivers/gpu/drm/imagination/ |
| H A D | pvr_queue.c | 117 pvr_context_put(fence->queue->ctx); in pvr_queue_fence_release_work() 124 struct pvr_device *pvr_dev = fence->queue->ctx->pvr_dev; in pvr_queue_fence_release() 134 switch (fence->queue->type) { in pvr_queue_job_fence_get_timeline_name() 157 switch (fence->queue->type) { in pvr_queue_cccb_fence_get_timeline_name() 297 struct pvr_queue *queue, in pvr_queue_fence_init() argument 303 pvr_context_get(queue->ctx); in pvr_queue_fence_init() 304 fence->queue = queue; in pvr_queue_fence_init() 322 pvr_queue_cccb_fence_init(struct dma_fence *fence, struct pvr_queue *queue) in pvr_queue_cccb_fence_init() argument 324 pvr_queue_fence_init(fence, queue, &pvr_queue_cccb_fence_ops, in pvr_queue_cccb_fence_init() 325 &queue->cccb_fence_ctx.base); in pvr_queue_cccb_fence_init() [all …]
|
| /linux/drivers/scsi/arm/ |
| H A D | queue.c | 59 int queue_initialise (Queue_t *queue) in queue_initialise() argument 64 spin_lock_init(&queue->queue_lock); in queue_initialise() 65 INIT_LIST_HEAD(&queue->head); in queue_initialise() 66 INIT_LIST_HEAD(&queue->free); in queue_initialise() 74 queue->alloc = q = kmalloc_objs(QE_t, nqueues); in queue_initialise() 79 list_add(&q->list, &queue->free); in queue_initialise() 83 return queue->alloc != NULL; in queue_initialise() 91 void queue_free (Queue_t *queue) in queue_free() argument 93 if (!list_empty(&queue->head)) in queue_free() 94 printk(KERN_WARNING "freeing non-empty queue %p\n", queue); in queue_free() [all …]
|
| H A D | queue.h | 22 extern int queue_initialise (Queue_t *queue); 29 extern void queue_free (Queue_t *queue); 37 extern struct scsi_cmnd *queue_remove (Queue_t *queue); 46 extern struct scsi_cmnd *queue_remove_exclude(Queue_t *queue, 49 #define queue_add_cmd_ordered(queue,SCpnt) \ argument 50 __queue_add(queue,SCpnt,(SCpnt)->cmnd[0] == REQUEST_SENSE) 51 #define queue_add_cmd_tail(queue,SCpnt) \ argument 52 __queue_add(queue,SCpnt,0) 61 extern int __queue_add(Queue_t *queue, struct scsi_cmnd *SCpnt, int head); 72 extern struct scsi_cmnd *queue_remove_tgtluntag(Queue_t *queue, int target, [all …]
|
| /linux/net/sunrpc/ |
| H A D | sched.c | 95 __rpc_disable_timer(struct rpc_wait_queue *queue, struct rpc_task *task) in __rpc_disable_timer() argument 101 if (list_empty(&queue->timer_list.list)) in __rpc_disable_timer() 102 cancel_delayed_work(&queue->timer_list.dwork); in __rpc_disable_timer() 106 rpc_set_queue_timer(struct rpc_wait_queue *queue, unsigned long expires) in rpc_set_queue_timer() argument 109 queue->timer_list.expires = expires; in rpc_set_queue_timer() 114 mod_delayed_work(rpciod_workqueue, &queue->timer_list.dwork, expires); in rpc_set_queue_timer() 121 __rpc_add_timer(struct rpc_wait_queue *queue, struct rpc_task *task, in __rpc_add_timer() argument 125 if (list_empty(&queue->timer_list.list) || time_before(timeout, queue->timer_list.expires)) in __rpc_add_timer() 126 rpc_set_queue_timer(queue, timeout); in __rpc_add_timer() 127 list_add(&task->u.tk_wait.timer_list, &queue->timer_list.list); in __rpc_add_timer() [all …]
|
| /linux/drivers/net/wireless/ath/ath5k/ |
| H A D | qcu.c | 63 ath5k_hw_num_tx_pending(struct ath5k_hw *ah, unsigned int queue) in ath5k_hw_num_tx_pending() argument 66 AR5K_ASSERT_ENTRY(queue, ah->ah_capabilities.cap_queues.q_tx_num); in ath5k_hw_num_tx_pending() 69 if (ah->ah_txq[queue].tqi_type == AR5K_TX_QUEUE_INACTIVE) in ath5k_hw_num_tx_pending() 76 pending = ath5k_hw_reg_read(ah, AR5K_QUEUE_STATUS(queue)); in ath5k_hw_num_tx_pending() 82 if (!pending && AR5K_REG_READ_Q(ah, AR5K_QCU_TXE, queue)) in ath5k_hw_num_tx_pending() 94 ath5k_hw_release_tx_queue(struct ath5k_hw *ah, unsigned int queue) in ath5k_hw_release_tx_queue() argument 96 if (WARN_ON(queue >= ah->ah_capabilities.cap_queues.q_tx_num)) in ath5k_hw_release_tx_queue() 100 ah->ah_txq[queue].tqi_type = AR5K_TX_QUEUE_INACTIVE; in ath5k_hw_release_tx_queue() 102 AR5K_Q_DISABLE_BITS(ah->ah_txq_status, queue); in ath5k_hw_release_tx_queue() 138 ath5k_hw_get_tx_queueprops(struct ath5k_hw *ah, int queue, in ath5k_hw_get_tx_queueprops() argument [all …]
|
| /linux/include/drm/ |
| H A D | spsc_queue.h | 48 static inline void spsc_queue_init(struct spsc_queue *queue) in spsc_queue_init() argument 50 queue->head = NULL; in spsc_queue_init() 51 atomic_long_set(&queue->tail, (long)&queue->head); in spsc_queue_init() 52 atomic_set(&queue->job_count, 0); in spsc_queue_init() 55 static inline struct spsc_node *spsc_queue_peek(struct spsc_queue *queue) in spsc_queue_peek() argument 57 return queue->head; in spsc_queue_peek() 60 static inline int spsc_queue_count(struct spsc_queue *queue) in spsc_queue_count() argument 62 return atomic_read(&queue->job_count); in spsc_queue_count() 65 static inline bool spsc_queue_push(struct spsc_queue *queue, struct spsc_node *node) in spsc_queue_push() argument 73 atomic_inc(&queue->job_count); in spsc_queue_push() [all …]
|