Lines Matching refs:iq
236 struct lio_instr_queue *iq;
272 iq = oct->instr_queue[q_no];
273 if (iq != NULL)
274 inst_cnt_reg = iq->inst_cnt_reg;
410 struct lio_instr_queue *iq = oct->instr_queue[iq_no];
417 iq->base_addr_dma);
418 lio_write_csr32(oct, LIO_CN23XX_SLI_IQ_SIZE(iq_no), iq->max_count);
424 iq->doorbell_reg = LIO_CN23XX_SLI_IQ_DOORBELL(iq_no);
425 iq->inst_cnt_reg = LIO_CN23XX_SLI_IQ_INSTR_COUNT64(iq_no);
427 iq_no, iq->doorbell_reg, iq->inst_cnt_reg);
433 pkt_in_done = lio_read_csr64(oct, iq->inst_cnt_reg);
437 lio_write_csr64(oct, iq->inst_cnt_reg,
444 lio_write_csr64(oct, iq->inst_cnt_reg, pkt_in_done);
447 iq->reset_instr_cnt = 0;
524 if (oct->io_qmask.iq & BIT_ULL(q_no - srn)) {
784 lio_cn23xx_pf_update_read_index(struct lio_instr_queue *iq)
786 struct octeon_device *oct = iq->oct_dev;
789 uint32_t pkt_in_done = lio_read_csr32(oct, iq->inst_cnt_reg);
791 last_done = pkt_in_done - iq->pkt_in_done;
792 iq->pkt_in_done = pkt_in_done;
796 * the new index. The iq->reset_instr_cnt is always zero for
799 new_idx = (iq->octeon_read_index +
801 iq->max_count;