Home
last modified time | relevance | path

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

/linux-4.4.14/drivers/net/ethernet/cavium/liquidio/
Docteon_droq.c108 struct octeon_droq *droq) in octeon_droq_check_hw_for_pkts() argument
112 pkt_count = readl(droq->pkts_sent_reg); in octeon_droq_check_hw_for_pkts()
114 atomic_add(pkt_count, &droq->pkts_pending); in octeon_droq_check_hw_for_pkts()
115 writel(pkt_count, droq->pkts_sent_reg); in octeon_droq_check_hw_for_pkts()
121 static void octeon_droq_compute_max_packet_bufs(struct octeon_droq *droq) in octeon_droq_compute_max_packet_bufs() argument
130 droq->max_empty_descs = 0; in octeon_droq_compute_max_packet_bufs()
133 droq->max_empty_descs++; in octeon_droq_compute_max_packet_bufs()
134 count += droq->buffer_size; in octeon_droq_compute_max_packet_bufs()
137 droq->max_empty_descs = droq->max_count - droq->max_empty_descs; in octeon_droq_compute_max_packet_bufs()
140 static void octeon_droq_reset_indices(struct octeon_droq *droq) in octeon_droq_reset_indices() argument
[all …]
Docteon_network.h165 lio_map_ring_info(struct octeon_droq *droq, u32 i) in lio_map_ring_info() argument
168 struct octeon_device *oct = droq->oct_dev; in lio_map_ring_info()
170 dma_addr = dma_map_single(&oct->pci_dev->dev, &droq->info_list[i], in lio_map_ring_info()
209 struct octeon_droq *droq, in octeon_fast_packet_alloc() argument
215 static inline void octeon_fast_packet_next(struct octeon_droq *droq, in octeon_fast_packet_next() argument
221 get_rbd(droq->recv_buf_list[idx].buffer), copy_len); in octeon_fast_packet_next()
Dcn66xx_device.c325 struct octeon_droq *droq = oct->droq[oq_no]; in lio_cn6xxx_setup_oq_regs() local
328 droq->desc_ring_dma); in lio_cn6xxx_setup_oq_regs()
329 octeon_write_csr(oct, CN6XXX_SLI_OQ_SIZE(oq_no), droq->max_count); in lio_cn6xxx_setup_oq_regs()
332 (droq->buffer_size | (OCT_RH_SIZE << 16))); in lio_cn6xxx_setup_oq_regs()
335 droq->pkts_sent_reg = in lio_cn6xxx_setup_oq_regs()
337 droq->pkts_credit_reg = in lio_cn6xxx_setup_oq_regs()
456 writel(oct->droq[i]->max_count, oct->droq[i]->pkts_credit_reg); in lio_cn6xxx_reinit_regs()
559 struct octeon_droq *droq; in lio_cn6xxx_process_droq_intr_regs() local
580 droq = oct->droq[oq_no]; in lio_cn6xxx_process_droq_intr_regs()
581 pkt_count = octeon_droq_check_hw_for_pkts(oct, droq); in lio_cn6xxx_process_droq_intr_regs()
[all …]
Dlio_main.c226 reschedule |= octeon_droq_process_packets(oct, oct->droq[q_no], in octeon_droq_bh()
248 oct->droq[i]); in lio_wait_for_oq_pkts()
910 struct octeon_droq *droq; in liquidio_schedule_droq_pkt_handlers() local
917 droq = oct->droq[oq_no]; in liquidio_schedule_droq_pkt_handlers()
919 if (droq->ops.poll_mode) { in liquidio_schedule_droq_pkt_handlers()
920 droq->ops.napi_fn(droq); in liquidio_schedule_droq_pkt_handlers()
1703 writel(oct->droq[q_no]->max_count, in octeon_setup_droq()
1704 oct->droq[q_no]->pkts_credit_reg); in octeon_setup_droq()
1779 struct octeon_droq *droq = container_of(param, struct octeon_droq, in liquidio_push_packet() local
1788 droq->stats.rx_dropped++; in liquidio_push_packet()
[all …]
Docteon_droq.h414 struct octeon_droq *droq);
420 struct octeon_droq *droq,
Dlio_ethtool.c564 data[i++] = CVM_CAST64(oct_dev->droq[j]->stats.pkts_received); in lio_get_ethtool_stats()
565 data[i++] = CVM_CAST64(oct_dev->droq[j]->stats.bytes_received); in lio_get_ethtool_stats()
567 CVM_CAST64(oct_dev->droq[j]->stats.dropped_nodispatch); in lio_get_ethtool_stats()
568 data[i++] = CVM_CAST64(oct_dev->droq[j]->stats.dropped_nomem); in lio_get_ethtool_stats()
569 data[i++] = CVM_CAST64(oct_dev->droq[j]->stats.dropped_toomany); in lio_get_ethtool_stats()
571 CVM_CAST64(oct_dev->droq[j]->stats.rx_pkts_received); in lio_get_ethtool_stats()
573 CVM_CAST64(oct_dev->droq[j]->stats.rx_bytes_received); in lio_get_ethtool_stats()
575 CVM_CAST64(oct_dev->droq[j]->stats.rx_dropped); in lio_get_ethtool_stats()
Docteon_device.c653 vfree(oct->droq[i]); in octeon_free_device_mem()
798 oct->droq[i] = vmalloc(sizeof(*oct->droq[i])); in octeon_setup_output_queues()
799 if (!oct->droq[i]) in octeon_setup_output_queues()
802 memset(oct->droq[i], 0, sizeof(struct octeon_droq)); in octeon_setup_output_queues()
1168 return oct->droq[q_no]->max_count; in octeon_get_rx_qsize()
Docteon_device.h335 struct octeon_droq *droq[MAX_OCTEON_OUTPUT_QUEUES]; member