Lines Matching full:ab
16 struct ath12k_base *ab = ar->ab; in ath12k_dbring_bufs_replenish() local
24 srng = &ab->hal.srng_list[ring->refill_srng.ring_id]; in ath12k_dbring_bufs_replenish()
28 ath12k_hal_srng_access_begin(ab, srng); in ath12k_dbring_bufs_replenish()
32 paddr = dma_map_single(ab->dev, ptr_aligned, ring->buf_sz, in ath12k_dbring_bufs_replenish()
35 ret = dma_mapping_error(ab->dev, paddr); 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()
69 dma_unmap_single(ab->dev, paddr, ring->buf_sz, in ath12k_dbring_bufs_replenish()
72 ath12k_hal_srng_access_end(ab, srng); in ath12k_dbring_bufs_replenish()
82 struct ath12k_base *ab = ar->ab; in ath12k_dbring_fill_bufs() local
87 srng = &ab->hal.srng_list[ring->refill_srng.ring_id]; in ath12k_dbring_fill_bufs()
91 num_free = ath12k_hal_srng_src_num_free(ab, srng, true); in ath12k_dbring_fill_bufs()
104 ath12k_warn(ab, "failed to replenish db ring num_remain %d req_ent %d\n", in ath12k_dbring_fill_bufs()
142 ath12k_warn(ar->ab, "failed to setup db ring cfg\n"); in ath12k_dbring_wmi_cfg_setup()
168 struct ath12k_base *ab = ar->ab; in ath12k_dbring_buf_setup() local
172 srng = &ab->hal.srng_list[ring->refill_srng.ring_id]; in ath12k_dbring_buf_setup()
174 ath12k_hal_srng_get_entrysize(ab, HAL_RXDMA_DIR_BUF); in ath12k_dbring_buf_setup()
179 ring->hp_addr = ath12k_hal_srng_get_hp_addr(ab, srng); in ath12k_dbring_buf_setup()
180 ring->tp_addr = ath12k_hal_srng_get_tp_addr(ab, srng); in ath12k_dbring_buf_setup()
192 ret = ath12k_dp_srng_setup(ar->ab, &ring->refill_srng, HAL_RXDMA_DIR_BUF, in ath12k_dbring_srng_setup()
195 ath12k_warn(ar->ab, "failed to setup srng: %d ring_id %d\n", in ath12k_dbring_srng_setup()
202 ath12k_dp_srng_cleanup(ar->ab, &ring->refill_srng); in ath12k_dbring_srng_setup()
206 int ath12k_dbring_get_cap(struct ath12k_base *ab, in ath12k_dbring_get_cap() argument
213 if (!ab->num_db_cap || !ab->db_caps) in ath12k_dbring_get_cap()
219 for (i = 0; i < ab->num_db_cap; i++) { in ath12k_dbring_get_cap()
220 if (pdev_idx == ab->db_caps[i].pdev_id && in ath12k_dbring_get_cap()
221 id == ab->db_caps[i].id) { in ath12k_dbring_get_cap()
222 *db_cap = ab->db_caps[i]; in ath12k_dbring_get_cap()
231 int ath12k_dbring_buffer_release_event(struct ath12k_base *ab, in ath12k_dbring_buffer_release_event() argument
251 if (pdev_idx >= ab->num_radios) { in ath12k_dbring_buffer_release_event()
252 ath12k_warn(ab, "Invalid pdev id %d\n", pdev_idx); in ath12k_dbring_buffer_release_event()
258 ath12k_warn(ab, "Buffer entry %d mismatch meta entry %d\n", in ath12k_dbring_buffer_release_event()
264 ar = ab->pdevs[pdev_idx].ar; in ath12k_dbring_buffer_release_event()
267 if (!rcu_dereference(ab->pdevs_active[pdev_idx])) { in ath12k_dbring_buffer_release_event()
277 ath12k_warn(ab, "Recv dma buffer release ev on unsupp module %d\n", in ath12k_dbring_buffer_release_event()
287 srng = &ab->hal.srng_list[ring->refill_srng.ring_id]; in ath12k_dbring_buffer_release_event()
314 dma_unmap_single(ab->dev, buff->paddr, ring->buf_sz, in ath12k_dbring_buffer_release_event()
340 ath12k_dp_srng_cleanup(ar->ab, &ring->refill_srng); in ath12k_dbring_srng_cleanup()
351 dma_unmap_single(ar->ab->dev, buff->paddr, in ath12k_dbring_buf_cleanup()