Lines Matching refs:ring
143 static void ice_free_cq_ring(struct ice_hw *hw, struct ice_ctl_q_ring *ring) in ice_free_cq_ring() argument
145 dmam_free_coherent(ice_hw_to_dev(hw), ring->desc_buf.size, in ice_free_cq_ring()
146 ring->desc_buf.va, ring->desc_buf.pa); in ice_free_cq_ring()
147 ring->desc_buf.va = NULL; in ice_free_cq_ring()
148 ring->desc_buf.pa = 0; in ice_free_cq_ring()
149 ring->desc_buf.size = 0; in ice_free_cq_ring()
273 ice_cfg_cq_regs(struct ice_hw *hw, struct ice_ctl_q_ring *ring, u16 num_entries) in ice_cfg_cq_regs() argument
276 wr32(hw, ring->head, 0); in ice_cfg_cq_regs()
277 wr32(hw, ring->tail, 0); in ice_cfg_cq_regs()
280 wr32(hw, ring->len, (num_entries | ring->len_ena_mask)); in ice_cfg_cq_regs()
281 wr32(hw, ring->bal, lower_32_bits(ring->desc_buf.pa)); in ice_cfg_cq_regs()
282 wr32(hw, ring->bah, upper_32_bits(ring->desc_buf.pa)); in ice_cfg_cq_regs()
285 if (rd32(hw, ring->bal) != lower_32_bits(ring->desc_buf.pa)) in ice_cfg_cq_regs()
324 #define ICE_FREE_CQ_BUFS(hw, qi, ring) \ argument
327 if ((qi)->ring.r.ring##_bi) { \
330 for (i = 0; i < (qi)->num_##ring##_entries; i++) \
331 if ((qi)->ring.r.ring##_bi[i].pa) { \
333 (qi)->ring.r.ring##_bi[i].size, \
334 (qi)->ring.r.ring##_bi[i].va, \
335 (qi)->ring.r.ring##_bi[i].pa); \
336 (qi)->ring.r.ring##_bi[i].va = NULL;\
337 (qi)->ring.r.ring##_bi[i].pa = 0;\
338 (qi)->ring.r.ring##_bi[i].size = 0;\
342 devm_kfree(ice_hw_to_dev(hw), (qi)->ring.cmd_buf); \
344 devm_kfree(ice_hw_to_dev(hw), (qi)->ring.dma_head); \