Home
last modified time | relevance | path

Searched refs:droq (Results 1 – 8 of 8) sorted by relevance

/freebsd/sys/dev/liquidio/base/
H A Dlio_droq.c108 lio_droq_check_hw_for_pkts(struct lio_droq *droq) in lio_droq_check_hw_for_pkts() argument
110 struct octeon_device *oct = droq->oct_dev; in lio_droq_check_hw_for_pkts()
114 pkt_count = lio_read_csr32(oct, droq->pkts_sent_reg); in lio_droq_check_hw_for_pkts()
116 last_count = pkt_count - droq->pkt_count; in lio_droq_check_hw_for_pkts()
117 droq->pkt_count = pkt_count; in lio_droq_check_hw_for_pkts()
121 atomic_add_int(&droq->pkts_pending, last_count); in lio_droq_check_hw_for_pkts()
127 lio_droq_compute_max_packet_bufs(struct lio_droq *droq) in lio_droq_compute_max_packet_bufs() argument
137 droq->max_empty_descs = 0; in lio_droq_compute_max_packet_bufs()
140 droq->max_empty_descs++; in lio_droq_compute_max_packet_bufs()
141 count += droq->buffer_size; in lio_droq_compute_max_packet_bufs()
[all …]
H A Dlio_device.c262 if ((oct->io_qmask.oq & BIT_ULL(i)) && (oct->droq[i])) in lio_free_device_mem()
263 free(oct->droq[i], M_DEVBUF); in lio_free_device_mem()
864 return (oct->droq[q_no]->max_count); in lio_get_rx_qsize()
1009 lio_enable_irq(struct lio_droq *droq, struct lio_instr_queue *iq) in lio_enable_irq() argument
1016 if (droq != NULL) { in lio_enable_irq()
1017 oct = droq->oct_dev; in lio_enable_irq()
1018 pkts_pend = atomic_load_acq_int(&droq->pkts_pending); in lio_enable_irq()
1019 mtx_lock(&droq->lock); in lio_enable_irq()
1020 lio_write_csr32(oct, droq->pkts_sent_reg, in lio_enable_irq()
1021 droq->pkt_count - pkts_pend); in lio_enable_irq()
[all …]
H A Dcn23xx_pf_device.c452 struct lio_droq *droq = oct->droq[oq_no]; in lio_cn23xx_pf_setup_oq_regs() local
461 droq->desc_ring_dma); in lio_cn23xx_pf_setup_oq_regs()
462 lio_write_csr32(oct, LIO_CN23XX_SLI_OQ_SIZE(oq_no), droq->max_count); in lio_cn23xx_pf_setup_oq_regs()
465 droq->buffer_size); in lio_cn23xx_pf_setup_oq_regs()
468 droq->pkts_sent_reg = LIO_CN23XX_SLI_OQ_PKTS_SENT(oq_no); in lio_cn23xx_pf_setup_oq_regs()
469 droq->pkts_credit_reg = LIO_CN23XX_SLI_OQ_PKTS_CREDIT(oq_no); in lio_cn23xx_pf_setup_oq_regs()
666 struct lio_droq *droq = oct->droq[ioq_vector->droq_index]; in lio_cn23xx_pf_msix_interrupt_handler() local
670 if (droq == NULL) { in lio_cn23xx_pf_msix_interrupt_handler()
675 pkts_sent = lio_read_csr64(oct, droq->pkts_sent_reg); in lio_cn23xx_pf_msix_interrupt_handler()
H A Dlio_droq.h420 uint32_t lio_droq_check_hw_for_pkts(struct lio_droq *droq);
426 struct lio_droq *droq, uint32_t budget);
429 struct lio_droq *droq);
H A Dlio_device.h433 struct lio_droq *droq[LIO_MAX_POSSIBLE_OUTPUT_QUEUES]; member
807 void lio_enable_irq(struct lio_droq *droq, struct lio_instr_queue *iq);
/freebsd/sys/dev/liquidio/
H A Dlio_core.c254 lio_write_csr32(oct, oct->droq[q_no]->pkts_credit_reg, in lio_setup_droq()
255 oct->droq[q_no]->max_count); in lio_setup_droq()
266 struct lio_droq *droq = rxq; in lio_push_packet() local
274 droq->stats.rx_dropped++; in lio_push_packet()
335 mbuf->m_pkthdr.flowid = droq->q_no; in lio_push_packet()
375 if (droq->lro.lro_cnt) { in lio_push_packet()
376 if (tcp_lro_rx(&droq->lro, mbuf, 0) == 0) { in lio_push_packet()
377 droq->stats.rx_bytes_received += len; in lio_push_packet()
378 droq->stats.rx_pkts_received++; in lio_push_packet()
386 droq->stats.rx_bytes_received += len; in lio_push_packet()
[all …]
H A Dlio_main.c300 lio_droq_bh(oct_dev->droq[0], 0); in lio_attach()
554 octeon_dev->droq[i] = malloc(sizeof(*octeon_dev->droq[i]), in lio_device_init()
556 if (octeon_dev->droq[i] == NULL) in lio_device_init()
590 octeon_dev->droq[j]->pkts_credit_reg, in lio_device_init()
591 octeon_dev->droq[j]->max_count); in lio_device_init()
1071 counter += oct->droq[q_no]->stats.rx_pkts_received; in lio_get_counter()
1083 counter += oct->droq[q_no]->stats.rx_bytes_received; in lio_get_counter()
1095 counter += oct->droq[q_no]->stats.rx_dropped; in lio_get_counter()
1175 struct lio_droq *droq; in lio_tcp_lro_free() local
1181 droq = octeon_dev->droq[q_no]; in lio_tcp_lro_free()
[all …]
H A Dlio_sysctl.c574 &oct_dev->droq[i]->stats.rx_pkts_received, in lio_add_hw_stats()
579 &oct_dev->droq[i]->stats.rx_bytes_received, in lio_add_hw_stats()
584 &oct_dev->droq[i]->stats.dropped_nomem, in lio_add_hw_stats()
588 &oct_dev->droq[i]->stats.dropped_toomany, in lio_add_hw_stats()
592 &oct_dev->droq[i]->stats.rx_dropped, in lio_add_hw_stats()
598 &oct_dev->droq[i]->stats.pkts_received, in lio_add_hw_stats()
603 &oct_dev->droq[i]->stats.bytes_received, in lio_add_hw_stats()
608 &oct_dev->droq[i]->stats.dropped_nodispatch, in lio_add_hw_stats()
613 &oct_dev->droq[i]->stats.rx_vxlan, in lio_add_hw_stats()
618 &oct_dev->droq[i]->stats.rx_alloc_failure, in lio_add_hw_stats()
[all …]