Lines Matching refs:arq
52 hw->aq.arq.tail = IAVF_VF_ARQT1; in iavf_adminq_init_regs()
53 hw->aq.arq.head = IAVF_VF_ARQH1; in iavf_adminq_init_regs()
54 hw->aq.arq.len = IAVF_VF_ARQLEN1; in iavf_adminq_init_regs()
55 hw->aq.arq.bal = IAVF_VF_ARQBAL1; in iavf_adminq_init_regs()
56 hw->aq.arq.bah = IAVF_VF_ARQBAH1; in iavf_adminq_init_regs()
94 ret_code = iavf_allocate_dma_mem(hw, &hw->aq.arq.desc_buf, in iavf_alloc_adminq_arq_ring()
125 iavf_free_dma_mem(hw, &hw->aq.arq.desc_buf); in iavf_free_adminq_arq()
144 ret_code = iavf_allocate_virt_mem(hw, &hw->aq.arq.dma_head, in iavf_alloc_arq_bufs()
148 hw->aq.arq.r.arq_bi = (struct iavf_dma_mem *)hw->aq.arq.dma_head.va; in iavf_alloc_arq_bufs()
152 bi = &hw->aq.arq.r.arq_bi[i]; in iavf_alloc_arq_bufs()
161 desc = IAVF_ADMINQ_DESC(hw->aq.arq, i); in iavf_alloc_arq_bufs()
189 iavf_free_dma_mem(hw, &hw->aq.arq.r.arq_bi[i]); in iavf_alloc_arq_bufs()
190 iavf_free_virt_mem(hw, &hw->aq.arq.dma_head); in iavf_alloc_arq_bufs()
245 iavf_free_dma_mem(hw, &hw->aq.arq.r.arq_bi[i]); in iavf_free_arq_bufs()
248 iavf_free_dma_mem(hw, &hw->aq.arq.desc_buf); in iavf_free_arq_bufs()
251 iavf_free_virt_mem(hw, &hw->aq.arq.dma_head); in iavf_free_arq_bufs()
318 wr32(hw, hw->aq.arq.head, 0); in iavf_config_arq_regs()
319 wr32(hw, hw->aq.arq.tail, 0); in iavf_config_arq_regs()
322 wr32(hw, hw->aq.arq.len, (hw->aq.num_arq_entries | in iavf_config_arq_regs()
324 wr32(hw, hw->aq.arq.bal, IAVF_LO_DWORD(hw->aq.arq.desc_buf.pa)); in iavf_config_arq_regs()
325 wr32(hw, hw->aq.arq.bah, IAVF_HI_DWORD(hw->aq.arq.desc_buf.pa)); in iavf_config_arq_regs()
328 wr32(hw, hw->aq.arq.tail, hw->aq.num_arq_entries - 1); in iavf_config_arq_regs()
331 reg = rd32(hw, hw->aq.arq.bal); in iavf_config_arq_regs()
332 if (reg != IAVF_LO_DWORD(hw->aq.arq.desc_buf.pa)) in iavf_config_arq_regs()
418 if (hw->aq.arq.count > 0) { in iavf_init_arq()
431 hw->aq.arq.next_to_use = 0; in iavf_init_arq()
432 hw->aq.arq.next_to_clean = 0; in iavf_init_arq()
450 hw->aq.arq.count = hw->aq.num_arq_entries; in iavf_init_arq()
506 if (hw->aq.arq.count == 0) { in iavf_shutdown_arq()
512 wr32(hw, hw->aq.arq.head, 0); in iavf_shutdown_arq()
513 wr32(hw, hw->aq.arq.tail, 0); in iavf_shutdown_arq()
514 wr32(hw, hw->aq.arq.len, 0); in iavf_shutdown_arq()
515 wr32(hw, hw->aq.arq.bal, 0); in iavf_shutdown_arq()
516 wr32(hw, hw->aq.arq.bah, 0); in iavf_shutdown_arq()
518 hw->aq.arq.count = 0; /* to indicate uninitialized queue */ in iavf_shutdown_arq()
900 u16 ntc = hw->aq.arq.next_to_clean; in iavf_clean_arq_element()
914 if (hw->aq.arq.count == 0) { in iavf_clean_arq_element()
922 ntu = rd32(hw, hw->aq.arq.head) & IAVF_VF_ARQH1_ARQH_MASK; in iavf_clean_arq_element()
930 desc = IAVF_ADMINQ_DESC(hw->aq.arq, ntc); in iavf_clean_arq_element()
950 hw->aq.arq.r.arq_bi[desc_idx].va, in iavf_clean_arq_element()
961 bi = &hw->aq.arq.r.arq_bi[ntc]; in iavf_clean_arq_element()
972 wr32(hw, hw->aq.arq.tail, ntc); in iavf_clean_arq_element()
977 hw->aq.arq.next_to_clean = ntc; in iavf_clean_arq_element()
978 hw->aq.arq.next_to_use = ntu; in iavf_clean_arq_element()
983 *pending = (ntc > ntu ? hw->aq.arq.count : 0) + (ntu - ntc); in iavf_clean_arq_element()