Home
last modified time | relevance | path

Searched refs:srng (Results 1 – 25 of 29) sorted by relevance

12

/linux/drivers/net/wireless/ath/ath12k/
H A Dhal.c11 struct hal_srng *srng, int ring_num) in ath12k_hal_ce_dst_setup() argument
13 ab->hal.ops->ce_dst_setup(ab, srng, ring_num); in ath12k_hal_ce_dst_setup()
17 struct hal_srng *srng) in ath12k_hal_srng_src_hw_init() argument
19 ab->hal.ops->srng_src_hw_init(ab, srng); in ath12k_hal_srng_src_hw_init()
23 struct hal_srng *srng) in ath12k_hal_srng_dst_hw_init() argument
25 ab->hal.ops->srng_dst_hw_init(ab, srng); in ath12k_hal_srng_dst_hw_init()
29 struct hal_srng *srng) in ath12k_hal_set_umac_srng_ptr_addr() argument
31 ab->hal.ops->set_umac_srng_ptr_addr(ab, srng); in ath12k_hal_set_umac_srng_ptr_addr()
99 void ath12k_hal_reo_init_cmd_ring(struct ath12k_base *ab, struct hal_srng *srng) in ath12k_hal_reo_init_cmd_ring() argument
101 ab->hal.ops->reo_init_cmd_ring(ab, srng); in ath12k_hal_reo_init_cmd_ring()
[all …]
H A Ddbring.c17 struct hal_srng *srng; in ath12k_dbring_bufs_replenish() local
24 srng = &ab->hal.srng_list[ring->refill_srng.ring_id]; in ath12k_dbring_bufs_replenish()
26 lockdep_assert_held(&srng->lock); in ath12k_dbring_bufs_replenish()
28 ath12k_hal_srng_access_begin(ab, srng); in ath12k_dbring_bufs_replenish()
47 desc = ath12k_hal_srng_src_get_next_entry(ab, srng); in ath12k_dbring_bufs_replenish()
60 ath12k_hal_srng_access_end(ab, srng); in ath12k_dbring_bufs_replenish()
72 ath12k_hal_srng_access_end(ab, srng); in ath12k_dbring_bufs_replenish()
81 struct hal_srng *srng; in ath12k_dbring_fill_bufs() local
87 srng = &ab->hal.srng_list[ring->refill_srng.ring_id]; in ath12k_dbring_fill_bufs()
89 spin_lock_bh(&srng->lock); in ath12k_dbring_fill_bufs()
[all …]
H A Dce.c16 struct hal_srng *srng; in ath12k_ce_rx_buf_enqueue_pipe() local
26 srng = &ab->hal.srng_list[ring->hal_ring_id]; in ath12k_ce_rx_buf_enqueue_pipe()
28 spin_lock_bh(&srng->lock); in ath12k_ce_rx_buf_enqueue_pipe()
30 ath12k_hal_srng_access_begin(ab, srng); in ath12k_ce_rx_buf_enqueue_pipe()
32 if (unlikely(ath12k_hal_srng_src_num_free(ab, srng, false) < 1)) { in ath12k_ce_rx_buf_enqueue_pipe()
37 desc = ath12k_hal_srng_src_get_next_entry(ab, srng); in ath12k_ce_rx_buf_enqueue_pipe()
53 ath12k_hal_srng_access_end(ab, srng); in ath12k_ce_rx_buf_enqueue_pipe()
55 spin_unlock_bh(&srng->lock); in ath12k_ce_rx_buf_enqueue_pipe()
114 struct hal_srng *srng; in ath12k_ce_completed_recv_next() local
124 srng = &ab->hal.srng_list[pipe->status_ring->hal_ring_id]; in ath12k_ce_completed_recv_next()
[all …]
H A Dhal.h1381 struct hal_srng *srng, int ring_num);
1383 struct hal_srng *srng);
1384 void (*srng_src_hw_init)(struct ath12k_base *ab, struct hal_srng *srng);
1385 void (*srng_dst_hw_init)(struct ath12k_base *ab, struct hal_srng *srng);
1414 struct hal_srng *srng);
1462 struct hal_srng *srng);
1464 struct hal_srng *srng);
1475 void ath12k_hal_srng_get_params(struct ath12k_base *ab, struct hal_srng *srng,
1478 struct hal_srng *srng);
1479 void *ath12k_hal_srng_src_peek(struct ath12k_base *ab, struct hal_srng *srng);
[all …]
H A Ddp_mon.c662 struct hal_srng *srng; in ath12k_dp_mon_buf_replenish() local
667 srng = &ab->hal.srng_list[buf_ring->refill_buf_ring.ring_id]; in ath12k_dp_mon_buf_replenish()
668 spin_lock_bh(&srng->lock); in ath12k_dp_mon_buf_replenish()
669 ath12k_hal_srng_access_begin(ab, srng); in ath12k_dp_mon_buf_replenish()
697 mon_buf = ath12k_hal_srng_src_get_next_entry(ab, srng); in ath12k_dp_mon_buf_replenish()
712 ath12k_hal_srng_access_end(ab, srng); in ath12k_dp_mon_buf_replenish()
713 spin_unlock_bh(&srng->lock); in ath12k_dp_mon_buf_replenish()
726 ath12k_hal_srng_access_end(ab, srng); in ath12k_dp_mon_buf_replenish()
727 spin_unlock_bh(&srng->lock); in ath12k_dp_mon_buf_replenish()
740 struct hal_srng *srng; in ath12k_dp_mon_status_bufs_replenish() local
[all …]
H A Ddp.c446 struct hal_srng *srng; in ath12k_dp_srng_common_setup() local
513 srng = &ab->hal.srng_list[dp->reo_cmd_ring.ring_id]; in ath12k_dp_srng_common_setup()
514 ath12k_hal_reo_init_cmd_ring(ab, srng); in ath12k_dp_srng_common_setup()
748 u32 ring_type, struct hal_srng *srng, in ath12k_dp_link_desc_setup() argument
807 spin_lock_bh(&srng->lock); in ath12k_dp_link_desc_setup()
809 ath12k_hal_srng_access_begin(ab, srng); in ath12k_dp_link_desc_setup()
818 (desc = ath12k_hal_srng_src_get_next_entry(ab, srng))) { in ath12k_dp_link_desc_setup()
827 ath12k_hal_srng_access_end(ab, srng); in ath12k_dp_link_desc_setup()
829 spin_unlock_bh(&srng->lock); in ath12k_dp_link_desc_setup()
1473 struct hal_srng *srng = NULL; in ath12k_dp_setup() local
[all …]
H A Ddp_rx.c74 struct hal_srng *srng; in ath12k_dp_rx_bufs_replenish() local
85 srng = &dp->hal->srng_list[rx_ring->refill_buf_ring.ring_id]; in ath12k_dp_rx_bufs_replenish()
87 spin_lock_bh(&srng->lock); in ath12k_dp_rx_bufs_replenish()
89 ath12k_hal_srng_access_begin(ab, srng); in ath12k_dp_rx_bufs_replenish()
91 num_free = ath12k_hal_srng_src_num_free(ab, srng, true); in ath12k_dp_rx_bufs_replenish()
139 desc = ath12k_hal_srng_src_get_next_entry(ab, srng); in ath12k_dp_rx_bufs_replenish()
160 ath12k_hal_srng_access_end(ab, srng); in ath12k_dp_rx_bufs_replenish()
165 spin_unlock_bh(&srng->lock); in ath12k_dp_rx_bufs_replenish()
1606 struct dp_srng *srng; in ath12k_dp_rx_free() local
1615 srng = &dp->rx_mon_status_refill_ring[i].refill_buf_ring; in ath12k_dp_rx_free()
[all …]
H A Ddp_htt.c733 struct hal_srng *srng = &ab->hal.srng_list[ring_id]; in ath12k_dp_tx_htt_srng_setup() local
748 ath12k_hal_srng_get_params(ab, srng, &params); in ath12k_dp_tx_htt_srng_setup()
750 hp_addr = ath12k_hal_srng_get_hp_addr(ab, srng); in ath12k_dp_tx_htt_srng_setup()
751 tp_addr = ath12k_hal_srng_get_tp_addr(ab, srng); in ath12k_dp_tx_htt_srng_setup()
938 struct hal_srng *srng = &ab->hal.srng_list[ring_id]; in ath12k_dp_tx_htt_rx_filter_setup() local
951 ath12k_hal_srng_get_params(ab, srng, &params); in ath12k_dp_tx_htt_rx_filter_setup()
1253 struct hal_srng *srng = &ab->hal.srng_list[ring_id]; in ath12k_dp_tx_htt_tx_filter_setup() local
1266 ath12k_hal_srng_get_params(ab, srng, &params); in ath12k_dp_tx_htt_tx_filter_setup()
/linux/drivers/net/wireless/ath/ath11k/
H A Dhal.c251 struct hal_srng *srng, int ring_num) in ath11k_hal_ce_dst_setup() argument
264 srng->u.dst_ring.max_buffer_length); in ath11k_hal_ce_dst_setup()
269 struct hal_srng *srng) in ath11k_hal_srng_dst_hw_init() argument
276 reg_base = srng->hwreg_base[HAL_SRNG_REG_GRP_R0]; in ath11k_hal_srng_dst_hw_init()
278 if (srng->flags & HAL_SRNG_FLAGS_MSI_INTR) { in ath11k_hal_srng_dst_hw_init()
281 srng->msi_addr); in ath11k_hal_srng_dst_hw_init()
284 ((u64)srng->msi_addr >> in ath11k_hal_srng_dst_hw_init()
292 srng->msi_data); in ath11k_hal_srng_dst_hw_init()
295 ath11k_hif_write32(ab, reg_base, srng->ring_base_paddr); in ath11k_hal_srng_dst_hw_init()
298 ((u64)srng->ring_base_paddr >> in ath11k_hal_srng_dst_hw_init()
[all …]
H A Ddbring.c45 struct hal_srng *srng; in ath11k_dbring_bufs_replenish() local
52 srng = &ab->hal.srng_list[ring->refill_srng.ring_id]; in ath11k_dbring_bufs_replenish()
54 lockdep_assert_held(&srng->lock); in ath11k_dbring_bufs_replenish()
56 ath11k_hal_srng_access_begin(ab, srng); in ath11k_dbring_bufs_replenish()
76 desc = ath11k_hal_srng_src_get_next_entry(ab, srng); in ath11k_dbring_bufs_replenish()
92 ath11k_debugfs_add_dbring_entry(ar, id, ATH11K_DBG_DBR_EVENT_REPLENISH, srng); in ath11k_dbring_bufs_replenish()
93 ath11k_hal_srng_access_end(ab, srng); in ath11k_dbring_bufs_replenish()
105 ath11k_hal_srng_access_end(ab, srng); in ath11k_dbring_bufs_replenish()
114 struct hal_srng *srng; in ath11k_dbring_fill_bufs() local
119 srng = &ar->ab->hal.srng_list[ring->refill_srng.ring_id]; in ath11k_dbring_fill_bufs()
[all …]
H A Dce.c278 struct hal_srng *srng; in ath11k_ce_rx_buf_enqueue_pipe() local
288 srng = &ab->hal.srng_list[ring->hal_ring_id]; in ath11k_ce_rx_buf_enqueue_pipe()
290 spin_lock_bh(&srng->lock); in ath11k_ce_rx_buf_enqueue_pipe()
292 ath11k_hal_srng_access_begin(ab, srng); in ath11k_ce_rx_buf_enqueue_pipe()
294 if (unlikely(ath11k_hal_srng_src_num_free(ab, srng, false) < 1)) { in ath11k_ce_rx_buf_enqueue_pipe()
299 desc = ath11k_hal_srng_src_get_next_entry(ab, srng); in ath11k_ce_rx_buf_enqueue_pipe()
315 ath11k_hal_srng_access_end(ab, srng); in ath11k_ce_rx_buf_enqueue_pipe()
317 spin_unlock_bh(&srng->lock); in ath11k_ce_rx_buf_enqueue_pipe()
376 struct hal_srng *srng; in ath11k_ce_completed_recv_next() local
387 srng = &ab->hal.srng_list[pipe->status_ring->hal_ring_id]; in ath11k_ce_completed_recv_next()
[all …]
H A Dhal.h923 struct hal_srng *srng);
930 struct hal_srng *srng);
932 struct hal_srng *srng);
942 void ath11k_hal_srng_get_params(struct ath11k_base *ab, struct hal_srng *srng,
945 struct hal_srng *srng);
946 u32 *ath11k_hal_srng_dst_peek(struct ath11k_base *ab, struct hal_srng *srng);
947 int ath11k_hal_srng_dst_num_free(struct ath11k_base *ab, struct hal_srng *srng,
949 u32 *ath11k_hal_srng_src_peek(struct ath11k_base *ab, struct hal_srng *srng);
951 struct hal_srng *srng);
953 struct hal_srng *srng);
[all …]
H A Ddp.c376 struct hal_srng *srng; in ath11k_dp_srng_common_setup() local
425 srng = &ab->hal.srng_list[dp->tx_ring[i].tcl_data_ring.ring_id]; in ath11k_dp_srng_common_setup()
426 ath11k_hal_tx_init_data_ring(ab, srng); in ath11k_dp_srng_common_setup()
463 srng = &ab->hal.srng_list[dp->reo_cmd_ring.ring_id]; in ath11k_dp_srng_common_setup()
464 ath11k_hal_reo_init_cmd_ring(ab, srng); in ath11k_dp_srng_common_setup()
687 u32 ring_type, struct hal_srng *srng, in ath11k_dp_link_desc_setup() argument
743 spin_lock_bh(&srng->lock); in ath11k_dp_link_desc_setup()
745 ath11k_hal_srng_access_begin(ab, srng); in ath11k_dp_link_desc_setup()
754 (desc = ath11k_hal_srng_src_get_next_entry(ab, srng))) { in ath11k_dp_link_desc_setup()
762 ath11k_hal_srng_access_end(ab, srng); in ath11k_dp_link_desc_setup()
[all …]
H A Ddp_rx.c349 struct hal_srng *srng; in ath11k_dp_rxbufs_replenish() local
360 srng = &ab->hal.srng_list[rx_ring->refill_buf_ring.ring_id]; in ath11k_dp_rxbufs_replenish()
362 spin_lock_bh(&srng->lock); in ath11k_dp_rxbufs_replenish()
364 ath11k_hal_srng_access_begin(ab, srng); in ath11k_dp_rxbufs_replenish()
366 num_free = ath11k_hal_srng_src_num_free(ab, srng, true); in ath11k_dp_rxbufs_replenish()
399 desc = ath11k_hal_srng_src_get_next_entry(ab, srng); in ath11k_dp_rxbufs_replenish()
413 ath11k_hal_srng_access_end(ab, srng); in ath11k_dp_rxbufs_replenish()
415 spin_unlock_bh(&srng->lock); in ath11k_dp_rxbufs_replenish()
429 ath11k_hal_srng_access_end(ab, srng); in ath11k_dp_rxbufs_replenish()
431 spin_unlock_bh(&srng->lock); in ath11k_dp_rxbufs_replenish()
[all …]
H A Dhal_tx.h69 int ath11k_hal_reo_cmd_send(struct ath11k_base *ab, struct hal_srng *srng,
73 struct hal_srng *srng);
H A Dhal_tx.c140 void ath11k_hal_tx_init_data_ring(struct ath11k_base *ab, struct hal_srng *srng) in ath11k_hal_tx_init_data_ring() argument
150 ath11k_hal_srng_get_params(ab, srng, &params); in ath11k_hal_tx_init_data_ring()
H A Ddebugfs.h313 struct hal_srng *srng);
386 struct hal_srng *srng) in ath11k_debugfs_add_dbring_entry() argument
H A Dhal_rx.c219 int ath11k_hal_reo_cmd_send(struct ath11k_base *ab, struct hal_srng *srng, in ath11k_hal_reo_cmd_send() argument
226 spin_lock_bh(&srng->lock); in ath11k_hal_reo_cmd_send()
228 ath11k_hal_srng_access_begin(ab, srng); in ath11k_hal_reo_cmd_send()
229 reo_desc = (struct hal_tlv_hdr *)ath11k_hal_srng_src_get_next_entry(ab, srng); in ath11k_hal_reo_cmd_send()
257 ath11k_dp_shadow_start_timer(ab, srng, &ab->dp.reo_cmd_timer); in ath11k_hal_reo_cmd_send()
260 ath11k_hal_srng_access_end(ab, srng); in ath11k_hal_reo_cmd_send()
261 spin_unlock_bh(&srng->lock); in ath11k_hal_reo_cmd_send()
785 struct hal_srng *srng) in ath11k_hal_reo_init_cmd_ring() argument
797 ath11k_hal_srng_get_params(ab, srng, &params); in ath11k_hal_reo_init_cmd_ring()
H A Ddp_tx.c882 struct hal_srng *srng = &ab->hal.srng_list[ring_id]; in ath11k_dp_tx_htt_srng_setup() local
897 ath11k_hal_srng_get_params(ab, srng, &params); in ath11k_dp_tx_htt_srng_setup()
899 hp_addr = ath11k_hal_srng_get_hp_addr(ab, srng); in ath11k_dp_tx_htt_srng_setup()
900 tp_addr = ath11k_hal_srng_get_tp_addr(ab, srng); in ath11k_dp_tx_htt_srng_setup()
1078 struct hal_srng *srng = &ab->hal.srng_list[ring_id]; in ath11k_dp_tx_htt_rx_filter_setup() local
1091 ath11k_hal_srng_get_params(ab, srng, &params); in ath11k_dp_tx_htt_rx_filter_setup()
/linux/drivers/net/wireless/ath/ath12k/wifi7/
H A Dhal.c120 struct hal_srng *srng, int ring_num) in ath12k_wifi7_hal_ce_dst_setup() argument
132 val |= u32_encode_bits(srng->u.dst_ring.max_buffer_length, in ath12k_wifi7_hal_ce_dst_setup()
138 struct hal_srng *srng) in ath12k_wifi7_hal_srng_dst_hw_init() argument
145 reg_base = srng->hwreg_base[HAL_SRNG_REG_GRP_R0]; in ath12k_wifi7_hal_srng_dst_hw_init()
147 if (srng->flags & HAL_SRNG_FLAGS_MSI_INTR) { in ath12k_wifi7_hal_srng_dst_hw_init()
150 srng->msi_addr); in ath12k_wifi7_hal_srng_dst_hw_init()
152 val = u32_encode_bits(((u64)srng->msi_addr >> HAL_ADDR_MSB_REG_SHIFT), in ath12k_wifi7_hal_srng_dst_hw_init()
162 srng->msi_data); in ath12k_wifi7_hal_srng_dst_hw_init()
165 ath12k_hif_write32(ab, reg_base, srng->ring_base_paddr); in ath12k_wifi7_hal_srng_dst_hw_init()
167 val = u32_encode_bits(((u64)srng->ring_base_paddr >> HAL_ADDR_MSB_REG_SHIFT), in ath12k_wifi7_hal_srng_dst_hw_init()
[all …]
H A Ddp_rx.c113 struct hal_srng *srng; in ath12k_wifi7_dp_rx_link_desc_return() local
116 srng = &dp->hal->srng_list[dp->wbm_desc_rel_ring.ring_id]; in ath12k_wifi7_dp_rx_link_desc_return()
118 spin_lock_bh(&srng->lock); in ath12k_wifi7_dp_rx_link_desc_return()
120 ath12k_hal_srng_access_begin(ab, srng); in ath12k_wifi7_dp_rx_link_desc_return()
122 desc = ath12k_hal_srng_src_get_next_entry(ab, srng); in ath12k_wifi7_dp_rx_link_desc_return()
131 ath12k_hal_srng_access_end(ab, srng); in ath12k_wifi7_dp_rx_link_desc_return()
133 spin_unlock_bh(&srng->lock); in ath12k_wifi7_dp_rx_link_desc_return()
654 struct hal_srng *srng; in ath12k_wifi7_dp_rx_process() local
664 srng = &hal->srng_list[dp->reo_dst_ring[ring_id].ring_id]; in ath12k_wifi7_dp_rx_process()
666 spin_lock_bh(&srng->lock); in ath12k_wifi7_dp_rx_process()
[all …]
H A Dhal_rx.c219 int ath12k_wifi7_hal_reo_cmd_send(struct ath12k_base *ab, struct hal_srng *srng, in ath12k_wifi7_hal_reo_cmd_send() argument
227 spin_lock_bh(&srng->lock); in ath12k_wifi7_hal_reo_cmd_send()
229 ath12k_hal_srng_access_begin(ab, srng); in ath12k_wifi7_hal_reo_cmd_send()
230 reo_desc = ath12k_hal_srng_src_get_next_entry(ab, srng); in ath12k_wifi7_hal_reo_cmd_send()
259 ath12k_hal_srng_access_end(ab, srng); in ath12k_wifi7_hal_reo_cmd_send()
260 spin_unlock_bh(&srng->lock); in ath12k_wifi7_hal_reo_cmd_send()
869 struct hal_srng *srng) in ath12k_wifi7_hal_reo_init_cmd_ring_tlv64() argument
881 ath12k_hal_srng_get_params(ab, srng, &params); in ath12k_wifi7_hal_reo_init_cmd_ring_tlv64()
894 struct hal_srng *srng) in ath12k_wifi7_hal_reo_init_cmd_ring_tlv32() argument
906 ath12k_hal_srng_get_params(ab, srng, &params); in ath12k_wifi7_hal_reo_init_cmd_ring_tlv32()
H A Ddp_mon.c2792 struct hal_srng *srng; in ath12k_wifi7_dp_rx_mon_dest_process() local
2795 srng = &ab->hal.srng_list[ring_id]; in ath12k_wifi7_dp_rx_mon_dest_process()
2799 spin_lock_bh(&srng->lock); in ath12k_wifi7_dp_rx_mon_dest_process()
2875 spin_unlock_bh(&srng->lock); in ath12k_wifi7_dp_rx_mon_dest_process()
2887 ath12k_wifi7_dp_rx_mon_buf_done(struct ath12k_base *ab, struct hal_srng *srng, in ath12k_wifi7_dp_rx_mon_buf_done() argument
2899 status_desc = ath12k_hal_srng_src_next_peek(ab, srng); in ath12k_wifi7_dp_rx_mon_buf_done()
3020 struct hal_srng *srng; in ath12k_wifi7_dp_rx_reap_mon_status_ring() local
3034 srng = &ab->hal.srng_list[rx_ring->refill_buf_ring.ring_id]; in ath12k_wifi7_dp_rx_reap_mon_status_ring()
3036 spin_lock_bh(&srng->lock); in ath12k_wifi7_dp_rx_reap_mon_status_ring()
3038 ath12k_hal_srng_access_begin(ab, srng); in ath12k_wifi7_dp_rx_reap_mon_status_ring()
[all …]
H A Dhal.h521 struct hal_srng *srng, int ring_num);
523 struct hal_srng *srng);
525 struct hal_srng *srng);
527 struct hal_srng *srng);
H A Dhal_tx.h188 int ath12k_wifi7_hal_reo_cmd_send(struct ath12k_base *ab, struct hal_srng *srng,

12