Lines Matching full:nic
84 #include "nic.h"
122 static int nicvf_poll_reg(struct nicvf *nic, int qidx, in nicvf_poll_reg() argument
133 reg_val = nicvf_queue_reg_read(nic, reg, qidx); in nicvf_poll_reg()
140 device_printf(nic->dev, "Poll on reg 0x%lx failed\n", reg); in nicvf_poll_reg()
157 nicvf_alloc_q_desc_mem(struct nicvf *nic, struct q_desc_mem *dmem, in nicvf_alloc_q_desc_mem() argument
164 bus_get_dma_tag(nic->dev), /* parent tag */ in nicvf_alloc_q_desc_mem()
178 device_printf(nic->dev, in nicvf_alloc_q_desc_mem()
190 device_printf(nic->dev, "Failed to allocate DMA safe memory for" in nicvf_alloc_q_desc_mem()
204 device_printf(nic->dev, in nicvf_alloc_q_desc_mem()
228 nicvf_free_q_desc_mem(struct nicvf *nic, struct q_desc_mem *dmem) in nicvf_free_q_desc_mem() argument
257 nicvf_alloc_rcv_buffer(struct nicvf *nic, struct rbdr *rbdr, in nicvf_alloc_rcv_buffer() argument
279 device_printf(nic->dev, in nicvf_alloc_rcv_buffer()
306 nicvf_rb_ptr_to_mbuf(struct nicvf *nic, bus_addr_t rb_ptr) in nicvf_rb_ptr_to_mbuf() argument
318 device_get_nameunit(nic->dev)); in nicvf_rb_ptr_to_mbuf()
334 nicvf_init_rbdr(struct nicvf *nic, struct rbdr *rbdr, int ring_len, in nicvf_init_rbdr() argument
344 err = nicvf_alloc_q_desc_mem(nic, &rbdr->dmem, ring_len, in nicvf_init_rbdr()
347 device_printf(nic->dev, in nicvf_init_rbdr()
360 rbdr->nic = nic; in nicvf_init_rbdr()
371 device_printf(nic->dev, in nicvf_init_rbdr()
376 bus_get_dma_tag(nic->dev), /* parent tag */ in nicvf_init_rbdr()
390 device_printf(nic->dev, in nicvf_init_rbdr()
401 device_printf(nic->dev, in nicvf_init_rbdr()
407 err = nicvf_alloc_rcv_buffer(nic, rbdr, dmap, M_WAITOK, in nicvf_init_rbdr()
422 device_get_nameunit(nic->dev)); in nicvf_init_rbdr()
429 nicvf_free_rbdr(struct nicvf *nic, struct rbdr *rbdr) in nicvf_free_rbdr() argument
439 qs = nic->qs; in nicvf_free_rbdr()
518 nicvf_free_q_desc_mem(nic, &rbdr->dmem); in nicvf_free_rbdr()
527 struct nicvf *nic; in nicvf_refill_rbdr() local
540 nic = rbdr->nic; in nicvf_refill_rbdr()
541 qs = nic->qs; in nicvf_refill_rbdr()
549 qcount = nicvf_queue_reg_read(nic, NIC_QSET_RBDR_0_1_STATUS0, rbdr_idx); in nicvf_refill_rbdr()
559 tail = nicvf_queue_reg_read(nic, NIC_QSET_RBDR_0_1_TAIL, rbdr_idx) >> 3; in nicvf_refill_rbdr()
565 if (nicvf_alloc_rcv_buffer(nic, rbdr, dmap, mflags, in nicvf_refill_rbdr()
584 nicvf_queue_reg_write(nic, NIC_QSET_RBDR_0_1_DOOR, in nicvf_refill_rbdr()
592 nicvf_enable_intr(nic, NICVF_INTR_RBDR, rbdr_idx); in nicvf_refill_rbdr()
636 nicvf_rcv_pkt_handler(struct nicvf *nic, struct cmp_queue *cq, in nicvf_rcv_pkt_handler() argument
645 rq = &nic->qs->rq[rq_idx]; in nicvf_rcv_pkt_handler()
648 err = nicvf_check_cqe_rx_errs(nic, cq, cqe_rx); in nicvf_rcv_pkt_handler()
652 mbuf = nicvf_get_rcv_mbuf(nic, cqe_rx); in nicvf_rcv_pkt_handler()
654 dprintf(nic->dev, "Packet not received\n"); in nicvf_rcv_pkt_handler()
694 nicvf_snd_pkt_handler(struct nicvf *nic, struct cmp_queue *cq, in nicvf_snd_pkt_handler() argument
703 sq = &nic->qs->sq[cqe_tx->sq_idx]; in nicvf_snd_pkt_handler()
709 dprintf(nic->dev, in nicvf_snd_pkt_handler()
724 nicvf_check_cqe_tx_errs(nic, cq, cqe_tx); in nicvf_snd_pkt_handler()
728 nicvf_cq_intr_handler(struct nicvf *nic, uint8_t cq_idx) in nicvf_cq_intr_handler() argument
737 struct queue_set *qs = nic->qs; in nicvf_cq_intr_handler()
750 cqe_count = nicvf_queue_reg_read(nic, NIC_QSET_CQ_0_7_STATUS, cq_idx); in nicvf_cq_intr_handler()
756 cqe_head = nicvf_queue_reg_read(nic, NIC_QSET_CQ_0_7_HEAD, cq_idx) >> 9; in nicvf_cq_intr_handler()
759 dprintf(nic->dev, "%s CQ%d cqe_count %d cqe_head %d\n", in nicvf_cq_intr_handler()
769 dprintf(nic->dev, "CQ%d cq_desc->cqe_type %d\n", cq_idx, in nicvf_cq_intr_handler()
773 cmp_err = nicvf_rcv_pkt_handler(nic, cq, cq_desc, in nicvf_cq_intr_handler()
787 nicvf_snd_pkt_handler(nic, cq, (void *)cq_desc, in nicvf_cq_intr_handler()
801 dprintf(nic->dev, in nicvf_cq_intr_handler()
806 nicvf_queue_reg_write(nic, NIC_QSET_CQ_0_7_DOOR, cq_idx, processed_cqe); in nicvf_cq_intr_handler()
809 ((if_getdrvflags(nic->ifp) & IFF_DRV_RUNNING) != 0)) { in nicvf_cq_intr_handler()
811 if_setdrvflagbits(nic->ifp, IFF_DRV_RUNNING, IFF_DRV_OACTIVE); in nicvf_cq_intr_handler()
819 rq = &nic->qs->rq[rq_idx]; in nicvf_cq_intr_handler()
825 ifp = nic->ifp; in nicvf_cq_intr_handler()
844 struct nicvf *nic; in nicvf_qs_err_task() local
850 nic = (struct nicvf *)arg; in nicvf_qs_err_task()
851 qs = nic->qs; in nicvf_qs_err_task()
854 if_setdrvflagbits(nic->ifp, IFF_DRV_OACTIVE, IFF_DRV_RUNNING); in nicvf_qs_err_task()
858 status = nicvf_queue_reg_read(nic, NIC_QSET_CQ_0_7_STATUS, in nicvf_qs_err_task()
863 nicvf_disable_intr(nic, NICVF_INTR_CQ, qidx); in nicvf_qs_err_task()
864 nicvf_sq_disable(nic, qidx); in nicvf_qs_err_task()
865 (void)nicvf_cq_intr_handler(nic, qidx); in nicvf_qs_err_task()
866 nicvf_cmp_queue_config(nic, qs, qidx, enable); in nicvf_qs_err_task()
867 nicvf_sq_free_used_descs(nic, &qs->sq[qidx], qidx); in nicvf_qs_err_task()
868 nicvf_sq_enable(nic, &qs->sq[qidx], qidx); in nicvf_qs_err_task()
869 nicvf_enable_intr(nic, NICVF_INTR_CQ, qidx); in nicvf_qs_err_task()
872 if_setdrvflagbits(nic->ifp, IFF_DRV_RUNNING, IFF_DRV_OACTIVE); in nicvf_qs_err_task()
874 nicvf_enable_intr(nic, NICVF_INTR_QS_ERR, 0); in nicvf_qs_err_task()
881 struct nicvf *nic; in nicvf_cmp_task() local
885 nic = cq->nic; in nicvf_cmp_task()
888 cmp_err = nicvf_cq_intr_handler(nic, cq->idx); in nicvf_cmp_task()
897 nicvf_clear_intr(nic, NICVF_INTR_CQ, cq->idx); in nicvf_cmp_task()
899 nicvf_enable_intr(nic, NICVF_INTR_CQ, cq->idx); in nicvf_cmp_task()
905 nicvf_init_cmp_queue(struct nicvf *nic, struct cmp_queue *cq, int q_len, in nicvf_init_cmp_queue() argument
912 device_get_nameunit(nic->dev), qidx); in nicvf_init_cmp_queue()
915 err = nicvf_alloc_q_desc_mem(nic, &cq->dmem, q_len, CMP_QUEUE_DESC_SIZE, in nicvf_init_cmp_queue()
919 device_printf(nic->dev, in nicvf_init_cmp_queue()
925 cq->thresh = pass1_silicon(nic->dev) ? 0 : CMP_QUEUE_CQE_THRESH; in nicvf_init_cmp_queue()
926 cq->nic = nic; in nicvf_init_cmp_queue()
928 nic->cq_coalesce_usecs = (CMP_QUEUE_TIMER_THRESH * 0.05) - 1; in nicvf_init_cmp_queue()
938 device_get_nameunit(nic->dev), qidx); in nicvf_init_cmp_queue()
944 nicvf_free_cmp_queue(struct nicvf *nic, struct cmp_queue *cq) in nicvf_free_cmp_queue() argument
971 nicvf_disable_intr(nic, NICVF_INTR_CQ, cq->idx); in nicvf_free_cmp_queue()
972 nicvf_clear_intr(nic, NICVF_INTR_CQ, cq->idx); in nicvf_free_cmp_queue()
975 nicvf_free_q_desc_mem(nic, &cq->dmem); in nicvf_free_cmp_queue()
985 struct nicvf *nic; in nicvf_xmit_locked() local
992 nic = sq->nic; in nicvf_xmit_locked()
993 ifp = nic->ifp; in nicvf_xmit_locked()
1018 struct nicvf *nic; in nicvf_snd_task() local
1022 nic = sq->nic; in nicvf_snd_task()
1023 ifp = nic->ifp; in nicvf_snd_task()
1030 IFF_DRV_RUNNING) || !nic->link_up) in nicvf_snd_task()
1043 nicvf_init_snd_queue(struct nicvf *nic, struct snd_queue *sq, int q_len, in nicvf_init_snd_queue() argument
1051 device_get_nameunit(nic->dev), qidx); in nicvf_init_snd_queue()
1059 device_printf(nic->dev, in nicvf_init_snd_queue()
1066 err = nicvf_alloc_q_desc_mem(nic, &sq->dmem, q_len, SND_QUEUE_DESC_SIZE, in nicvf_init_snd_queue()
1069 device_printf(nic->dev, in nicvf_init_snd_queue()
1079 sq->nic = nic; in nicvf_init_snd_queue()
1087 bus_get_dma_tag(nic->dev), /* parent tag */ in nicvf_init_snd_queue()
1101 device_printf(nic->dev, in nicvf_init_snd_queue()
1110 device_printf(nic->dev, in nicvf_init_snd_queue()
1121 device_printf(nic->dev, in nicvf_init_snd_queue()
1133 device_get_nameunit(nic->dev), qidx); in nicvf_init_snd_queue()
1142 nicvf_free_snd_queue(struct nicvf *nic, struct snd_queue *sq) in nicvf_free_snd_queue() argument
1144 struct queue_set *qs = nic->qs; in nicvf_free_snd_queue()
1194 nicvf_free_q_desc_mem(nic, &sq->dmem); in nicvf_free_snd_queue()
1203 nicvf_reclaim_snd_queue(struct nicvf *nic, struct queue_set *qs, int qidx) in nicvf_reclaim_snd_queue() argument
1207 nicvf_queue_reg_write(nic, NIC_QSET_SQ_0_7_CFG, qidx, 0); in nicvf_reclaim_snd_queue()
1209 if (nicvf_poll_reg(nic, qidx, NIC_QSET_SQ_0_7_STATUS, 21, 1, 0x01)) in nicvf_reclaim_snd_queue()
1212 nicvf_queue_reg_write(nic, NIC_QSET_SQ_0_7_CFG, qidx, NICVF_SQ_RESET); in nicvf_reclaim_snd_queue()
1216 nicvf_reclaim_rcv_queue(struct nicvf *nic, struct queue_set *qs, int qidx) in nicvf_reclaim_rcv_queue() argument
1222 nicvf_send_msg_to_pf(nic, &mbx); in nicvf_reclaim_rcv_queue()
1226 nicvf_reclaim_cmp_queue(struct nicvf *nic, struct queue_set *qs, int qidx) in nicvf_reclaim_cmp_queue() argument
1230 nicvf_queue_reg_write(nic, NIC_QSET_CQ_0_7_CFG2, qidx, 0); in nicvf_reclaim_cmp_queue()
1232 nicvf_queue_reg_write(nic, NIC_QSET_CQ_0_7_CFG, qidx, 0); in nicvf_reclaim_cmp_queue()
1234 nicvf_queue_reg_write(nic, NIC_QSET_CQ_0_7_CFG, qidx, NICVF_CQ_RESET); in nicvf_reclaim_cmp_queue()
1238 nicvf_reclaim_rbdr(struct nicvf *nic, struct rbdr *rbdr, int qidx) in nicvf_reclaim_rbdr() argument
1245 nicvf_queue_reg_read(nic, NIC_QSET_RBDR_0_1_HEAD, qidx) >> 3; in nicvf_reclaim_rbdr()
1247 nicvf_queue_reg_read(nic, NIC_QSET_RBDR_0_1_TAIL, qidx) >> 3; in nicvf_reclaim_rbdr()
1253 fifo_state = nicvf_queue_reg_read(nic, NIC_QSET_RBDR_0_1_STATUS0, qidx); in nicvf_reclaim_rbdr()
1255 nicvf_queue_reg_write(nic, NIC_QSET_RBDR_0_1_CFG, in nicvf_reclaim_rbdr()
1260 nicvf_queue_reg_write(nic, NIC_QSET_RBDR_0_1_CFG, qidx, 0); in nicvf_reclaim_rbdr()
1261 if (nicvf_poll_reg(nic, qidx, NIC_QSET_RBDR_0_1_STATUS0, 62, 2, 0x00)) in nicvf_reclaim_rbdr()
1264 tmp = nicvf_queue_reg_read(nic, in nicvf_reclaim_rbdr()
1272 device_printf(nic->dev, in nicvf_reclaim_rbdr()
1277 nicvf_queue_reg_write(nic, NIC_QSET_RBDR_0_1_CFG, qidx, in nicvf_reclaim_rbdr()
1280 if (nicvf_poll_reg(nic, qidx, NIC_QSET_RBDR_0_1_STATUS0, 62, 2, 0x02)) in nicvf_reclaim_rbdr()
1282 nicvf_queue_reg_write(nic, NIC_QSET_RBDR_0_1_CFG, qidx, 0x00); in nicvf_reclaim_rbdr()
1283 if (nicvf_poll_reg(nic, qidx, NIC_QSET_RBDR_0_1_STATUS0, 62, 2, 0x00)) in nicvf_reclaim_rbdr()
1289 nicvf_rcv_queue_config(struct nicvf *nic, struct queue_set *qs, in nicvf_rcv_queue_config() argument
1298 ifp = nic->ifp; in nicvf_rcv_queue_config()
1306 nicvf_queue_reg_write(nic, NIC_QSET_RQ_0_7_CFG, qidx, 0); in nicvf_rcv_queue_config()
1309 nicvf_reclaim_rcv_queue(nic, qs, qidx); in nicvf_rcv_queue_config()
1320 device_printf(nic->dev, in nicvf_rcv_queue_config()
1324 lro->ifp = nic->ifp; in nicvf_rcv_queue_config()
1345 nicvf_send_msg_to_pf(nic, &mbx); in nicvf_rcv_queue_config()
1349 nicvf_send_msg_to_pf(nic, &mbx); in nicvf_rcv_queue_config()
1357 nicvf_send_msg_to_pf(nic, &mbx); in nicvf_rcv_queue_config()
1359 nicvf_queue_reg_write(nic, NIC_QSET_RQ_GEN_CFG, 0, 0x00); in nicvf_rcv_queue_config()
1364 nicvf_queue_reg_write(nic, NIC_QSET_RQ_0_7_CFG, qidx, in nicvf_rcv_queue_config()
1370 nicvf_cmp_queue_config(struct nicvf *nic, struct queue_set *qs, in nicvf_cmp_queue_config() argument
1380 nicvf_reclaim_cmp_queue(nic, qs, qidx); in nicvf_cmp_queue_config()
1385 nicvf_queue_reg_write(nic, NIC_QSET_CQ_0_7_CFG, qidx, NICVF_CQ_RESET); in nicvf_cmp_queue_config()
1388 nicvf_queue_reg_write(nic, NIC_QSET_CQ_0_7_BASE, qidx, in nicvf_cmp_queue_config()
1397 nicvf_queue_reg_write(nic, NIC_QSET_CQ_0_7_CFG, qidx, *(uint64_t *)&cq_cfg); in nicvf_cmp_queue_config()
1400 nicvf_queue_reg_write(nic, NIC_QSET_CQ_0_7_THRESH, qidx, cq->thresh); in nicvf_cmp_queue_config()
1401 nicvf_queue_reg_write(nic, NIC_QSET_CQ_0_7_CFG2, qidx, in nicvf_cmp_queue_config()
1402 nic->cq_coalesce_usecs); in nicvf_cmp_queue_config()
1407 nicvf_snd_queue_config(struct nicvf *nic, struct queue_set *qs, int qidx, in nicvf_snd_queue_config() argument
1418 nicvf_reclaim_snd_queue(nic, qs, qidx); in nicvf_snd_queue_config()
1423 nicvf_queue_reg_write(nic, NIC_QSET_SQ_0_7_CFG, qidx, NICVF_SQ_RESET); in nicvf_snd_queue_config()
1432 mbx.sq.sqs_mode = nic->sqs_mode; in nicvf_snd_queue_config()
1434 nicvf_send_msg_to_pf(nic, &mbx); in nicvf_snd_queue_config()
1437 nicvf_queue_reg_write(nic, NIC_QSET_SQ_0_7_BASE, qidx, in nicvf_snd_queue_config()
1446 nicvf_queue_reg_write(nic, NIC_QSET_SQ_0_7_CFG, qidx, *(uint64_t *)&sq_cfg); in nicvf_snd_queue_config()
1449 nicvf_queue_reg_write(nic, NIC_QSET_SQ_0_7_THRESH, qidx, sq->thresh); in nicvf_snd_queue_config()
1454 nicvf_rbdr_config(struct nicvf *nic, struct queue_set *qs, int qidx, in nicvf_rbdr_config() argument
1461 nicvf_reclaim_rbdr(nic, rbdr, qidx); in nicvf_rbdr_config()
1466 nicvf_queue_reg_write(nic, NIC_QSET_RBDR_0_1_BASE, qidx, in nicvf_rbdr_config()
1477 nicvf_queue_reg_write(nic, NIC_QSET_RBDR_0_1_CFG, qidx, in nicvf_rbdr_config()
1481 nicvf_queue_reg_write(nic, NIC_QSET_RBDR_0_1_DOOR, qidx, in nicvf_rbdr_config()
1485 nicvf_queue_reg_write(nic, NIC_QSET_RBDR_0_1_THRESH, qidx, in nicvf_rbdr_config()
1491 nicvf_qset_config(struct nicvf *nic, boolean_t enable) in nicvf_qset_config() argument
1497 qs = nic->qs; in nicvf_qset_config()
1499 device_printf(nic->dev, in nicvf_qset_config()
1505 qs->vnic_id = nic->vf_id; in nicvf_qset_config()
1517 nicvf_send_msg_to_pf(nic, &mbx); in nicvf_qset_config()
1521 nicvf_free_resources(struct nicvf *nic) in nicvf_free_resources() argument
1526 qs = nic->qs; in nicvf_free_resources()
1542 nicvf_free_rbdr(nic, &qs->rbdr[qidx]); in nicvf_free_resources()
1546 nicvf_free_cmp_queue(nic, &qs->cq[qidx]); in nicvf_free_resources()
1550 nicvf_free_snd_queue(nic, &qs->sq[qidx]); in nicvf_free_resources()
1554 nicvf_alloc_resources(struct nicvf *nic) in nicvf_alloc_resources() argument
1556 struct queue_set *qs = nic->qs; in nicvf_alloc_resources()
1561 if (nicvf_init_rbdr(nic, &qs->rbdr[qidx], qs->rbdr_len, in nicvf_alloc_resources()
1568 if (nicvf_init_snd_queue(nic, &qs->sq[qidx], qs->sq_len, qidx)) in nicvf_alloc_resources()
1574 if (nicvf_init_cmp_queue(nic, &qs->cq[qidx], qs->cq_len, qidx)) in nicvf_alloc_resources()
1579 NET_TASK_INIT(&qs->qs_err_task, 0, nicvf_qs_err_task, nic); in nicvf_alloc_resources()
1583 device_get_nameunit(nic->dev)); in nicvf_alloc_resources()
1587 nicvf_free_resources(nic); in nicvf_alloc_resources()
1592 nicvf_set_qset_resources(struct nicvf *nic) in nicvf_set_qset_resources() argument
1597 nic->qs = qs; in nicvf_set_qset_resources()
1611 nic->rx_queues = qs->rq_cnt; in nicvf_set_qset_resources()
1612 nic->tx_queues = qs->sq_cnt; in nicvf_set_qset_resources()
1618 nicvf_config_data_transfer(struct nicvf *nic, boolean_t enable) in nicvf_config_data_transfer() argument
1624 qs = nic->qs; in nicvf_config_data_transfer()
1629 if (nicvf_alloc_resources(nic) != 0) in nicvf_config_data_transfer()
1633 nicvf_snd_queue_config(nic, qs, qidx, enable); in nicvf_config_data_transfer()
1635 nicvf_cmp_queue_config(nic, qs, qidx, enable); in nicvf_config_data_transfer()
1637 nicvf_rbdr_config(nic, qs, qidx, enable); in nicvf_config_data_transfer()
1639 nicvf_rcv_queue_config(nic, qs, qidx, enable); in nicvf_config_data_transfer()
1642 nicvf_rcv_queue_config(nic, qs, qidx, disable); in nicvf_config_data_transfer()
1644 nicvf_rbdr_config(nic, qs, qidx, disable); in nicvf_config_data_transfer()
1646 nicvf_snd_queue_config(nic, qs, qidx, disable); in nicvf_config_data_transfer()
1648 nicvf_cmp_queue_config(nic, qs, qidx, disable); in nicvf_config_data_transfer()
1650 nicvf_free_resources(nic); in nicvf_config_data_transfer()
1692 nicvf_sq_enable(struct nicvf *nic, struct snd_queue *sq, int qidx) in nicvf_sq_enable() argument
1696 sq_cfg = nicvf_queue_reg_read(nic, NIC_QSET_SQ_0_7_CFG, qidx); in nicvf_sq_enable()
1698 nicvf_queue_reg_write(nic, NIC_QSET_SQ_0_7_CFG, qidx, sq_cfg); in nicvf_sq_enable()
1700 nicvf_queue_reg_write(nic, NIC_QSET_SQ_0_7_DOOR, qidx, 0); in nicvf_sq_enable()
1704 nicvf_sq_disable(struct nicvf *nic, int qidx) in nicvf_sq_disable() argument
1708 sq_cfg = nicvf_queue_reg_read(nic, NIC_QSET_SQ_0_7_CFG, qidx); in nicvf_sq_disable()
1710 nicvf_queue_reg_write(nic, NIC_QSET_SQ_0_7_CFG, qidx, sq_cfg); in nicvf_sq_disable()
1714 nicvf_sq_free_used_descs(struct nicvf *nic, struct snd_queue *sq, int qidx) in nicvf_sq_free_used_descs() argument
1721 head = nicvf_queue_reg_read(nic, NIC_QSET_SQ_0_7_HEAD, qidx) >> 4; in nicvf_sq_free_used_descs()
1747 struct nicvf *nic; in nicvf_sq_add_hdr_subdesc() local
1762 nic = sq->nic; in nicvf_sq_add_hdr_subdesc()
1865 if ((mbuf->m_pkthdr.tso_segsz != 0) && nic->hw_tso) { in nicvf_sq_add_hdr_subdesc()
1872 nic->drv_stats.tx_tso++; in nicvf_sq_add_hdr_subdesc()
1958 dprintf(sq->nic->dev, "%s: sq->idx: %d, subdesc_cnt: %d\n", in nicvf_tx_mbuf_locked()
1961 nicvf_queue_reg_write(sq->nic, NIC_QSET_SQ_0_7_DOOR, in nicvf_tx_mbuf_locked()
1978 nicvf_get_rcv_mbuf(struct nicvf *nic, struct cqe_rx_t *cqe_rx) in nicvf_get_rcv_mbuf() argument
1991 dprintf(nic->dev, "%s rb_cnt %d rb0_ptr %lx rb0_sz %d\n", in nicvf_get_rcv_mbuf()
1998 mbuf = nicvf_rb_ptr_to_mbuf(nic, in nicvf_get_rcv_mbuf()
2002 if_setrcvif(mbuf, nic->ifp); in nicvf_get_rcv_mbuf()
2005 mbuf_frag = nicvf_rb_ptr_to_mbuf(nic, *rb_ptrs); in nicvf_get_rcv_mbuf()
2017 if (__predict_true((if_getcapenable(nic->ifp) & IFCAP_RXCSUM) != 0)) { in nicvf_get_rcv_mbuf()
2047 nicvf_enable_intr(struct nicvf *nic, int int_type, int q_idx) in nicvf_enable_intr() argument
2051 reg_val = nicvf_reg_read(nic, NIC_VF_ENA_W1S); in nicvf_enable_intr()
2076 device_printf(nic->dev, in nicvf_enable_intr()
2081 nicvf_reg_write(nic, NIC_VF_ENA_W1S, reg_val); in nicvf_enable_intr()
2086 nicvf_disable_intr(struct nicvf *nic, int int_type, int q_idx) in nicvf_disable_intr() argument
2113 device_printf(nic->dev, in nicvf_disable_intr()
2118 nicvf_reg_write(nic, NIC_VF_ENA_W1C, reg_val); in nicvf_disable_intr()
2123 nicvf_clear_intr(struct nicvf *nic, int int_type, int q_idx) in nicvf_clear_intr() argument
2150 device_printf(nic->dev, in nicvf_clear_intr()
2155 nicvf_reg_write(nic, NIC_VF_INT, reg_val); in nicvf_clear_intr()
2160 nicvf_is_intr_enabled(struct nicvf *nic, int int_type, int q_idx) in nicvf_is_intr_enabled() argument
2165 reg_val = nicvf_reg_read(nic, NIC_VF_ENA_W1S); in nicvf_is_intr_enabled()
2190 device_printf(nic->dev, in nicvf_is_intr_enabled()
2199 nicvf_update_rq_stats(struct nicvf *nic, int rq_idx) in nicvf_update_rq_stats() argument
2204 nicvf_reg_read(nic, NIC_QSET_RQ_0_7_STAT_0_1 |\ in nicvf_update_rq_stats()
2207 rq = &nic->qs->rq[rq_idx]; in nicvf_update_rq_stats()
2213 nicvf_update_sq_stats(struct nicvf *nic, int sq_idx) in nicvf_update_sq_stats() argument
2218 nicvf_reg_read(nic, NIC_QSET_SQ_0_7_STAT_0_1 |\ in nicvf_update_sq_stats()
2221 sq = &nic->qs->sq[sq_idx]; in nicvf_update_sq_stats()
2228 nicvf_check_cqe_rx_errs(struct nicvf *nic, struct cmp_queue *cq, in nicvf_check_cqe_rx_errs() argument
2231 struct nicvf_hw_stats *stats = &nic->hw_stats; in nicvf_check_cqe_rx_errs()
2232 struct nicvf_drv_stats *drv_stats = &nic->drv_stats; in nicvf_check_cqe_rx_errs()
2319 nicvf_check_cqe_tx_errs(struct nicvf *nic, struct cmp_queue *cq, in nicvf_check_cqe_tx_errs() argument