Lines Matching refs:scctx
720 static void _iflib_pre_assert(if_softc_ctx_t scctx);
745 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_num_rx_descs() local
749 return (scctx->isc_nrxd[first_rxq]); in iflib_num_rx_descs()
755 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_num_tx_descs() local
759 return (scctx->isc_ntxd[first_txq]); in iflib_num_tx_descs()
1181 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_netmap_rxsync() local
1264 while (*cidxp >= scctx->isc_nrxd[0]) in iflib_netmap_rxsync()
1265 *cidxp -= scctx->isc_nrxd[0]; in iflib_netmap_rxsync()
1709 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_txsd_alloc() local
1716 nsegments = scctx->isc_tx_nsegments; in iflib_txsd_alloc()
1717 ntsosegments = scctx->isc_tx_tso_segments_max; in iflib_txsd_alloc()
1718 tsomaxsize = scctx->isc_tx_tso_size_max; in iflib_txsd_alloc()
1721 MPASS(scctx->isc_ntxd[0] > 0); in iflib_txsd_alloc()
1722 MPASS(scctx->isc_ntxd[txq->ift_br_offset] > 0); in iflib_txsd_alloc()
1729 lowaddr = DMA_WIDTH_TO_BUS_LOWADDR(scctx->isc_dma_width); in iflib_txsd_alloc()
1772 scctx->isc_ntxd[txq->ift_br_offset], M_IFLIB, M_NOWAIT | M_ZERO))) { in iflib_txsd_alloc()
1782 sizeof(bus_dmamap_t) * scctx->isc_ntxd[txq->ift_br_offset], in iflib_txsd_alloc()
1790 sizeof(bus_dmamap_t) * scctx->isc_ntxd[txq->ift_br_offset], in iflib_txsd_alloc()
1797 for (int i = 0; i < scctx->isc_ntxd[txq->ift_br_offset]; i++) { in iflib_txsd_alloc()
1912 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_txq_setup() local
1925 txq->ift_size = scctx->isc_ntxd[txq->ift_br_offset]; in iflib_txq_setup()
1953 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_rxsd_alloc() local
1959 MPASS(scctx->isc_nrxd[0] > 0); in iflib_rxsd_alloc()
1960 MPASS(scctx->isc_nrxd[rxq->ifr_fl_offset] > 0); in iflib_rxsd_alloc()
1962 lowaddr = DMA_WIDTH_TO_BUS_LOWADDR(scctx->isc_dma_width); in iflib_rxsd_alloc()
1966 fl->ifl_size = scctx->isc_nrxd[rxq->ifr_fl_offset]; /* this isn't necessarily the same */ in iflib_rxsd_alloc()
1989 scctx->isc_nrxd[rxq->ifr_fl_offset], M_IFLIB, M_NOWAIT | M_ZERO))) { in iflib_rxsd_alloc()
1999 scctx->isc_nrxd[rxq->ifr_fl_offset], M_IFLIB, M_NOWAIT | M_ZERO))) { in iflib_rxsd_alloc()
2009 scctx->isc_nrxd[rxq->ifr_fl_offset], M_IFLIB, M_NOWAIT | M_ZERO))) { in iflib_rxsd_alloc()
2020 …(bus_dmamap_t *) malloc(sizeof(bus_dmamap_t) * scctx->isc_nrxd[rxq->ifr_fl_offset], M_IFLIB, M_NOW… in iflib_rxsd_alloc()
2026 for (int i = 0; i < scctx->isc_nrxd[rxq->ifr_fl_offset]; i++) { in iflib_rxsd_alloc()
2302 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_fl_setup() local
2313 if (scctx->isc_rxd_buf_size[qidx] != 0) in iflib_fl_setup()
2314 fl->ifl_buf_size = scctx->isc_rxd_buf_size[qidx]; in iflib_fl_setup()
2487 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_init_locked() local
2503 tx_ip_csum_flags = scctx->isc_tx_csum_flags & (CSUM_IP | CSUM_TCP | CSUM_UDP | CSUM_SCTP); in iflib_init_locked()
2504 tx_ip6_csum_flags = scctx->isc_tx_csum_flags & (CSUM_IP6_TCP | CSUM_IP6_UDP | CSUM_IP6_SCTP); in iflib_init_locked()
2516 for (i = 0, txq = ctx->ifc_txqs; i < scctx->isc_ntxqsets; i++, txq++) { in iflib_init_locked()
2538 for (i = 0, rxq = ctx->ifc_rxqs; i < scctx->isc_nrxqsets; i++, rxq++) { in iflib_init_locked()
2556 for (i = 0; i < scctx->isc_ntxqsets; i++, txq++) in iflib_init_locked()
2593 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_stop() local
2616 for (i = 0; i < scctx->isc_ntxqsets; i++, txq++) { in iflib_stop()
2646 for (i = 0; i < scctx->isc_nrxqsets; i++, rxq++) { in iflib_stop()
2951 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_rxeof() local
3010 while (rxq->ifr_cq_cidx >= scctx->isc_nrxd[0]) in iflib_rxeof()
3011 rxq->ifr_cq_cidx -= scctx->isc_nrxd[0]; in iflib_rxeof()
3602 if_softc_ctx_t scctx; in iflib_encap() local
3614 scctx = &ctx->ifc_softc_ctx; in iflib_encap()
3642 max_segs = scctx->isc_tx_tso_segments_max; in iflib_encap()
3648 max_segs = scctx->isc_tx_nsegments; in iflib_encap()
3652 __predict_false(m_head->m_pkthdr.len < scctx->isc_min_frame_size)) { in iflib_encap()
3653 err = iflib_ether_pad(ctx->ifc_dev, m_headp, scctx->isc_min_frame_size); in iflib_encap()
4783 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_reset_qvalues() local
4789 scctx->isc_ntxqsets = ctx->ifc_sysctl_ntxqs; in iflib_reset_qvalues()
4791 scctx->isc_nrxqsets = ctx->ifc_sysctl_nrxqs; in iflib_reset_qvalues()
4795 scctx->isc_ntxd[i] = ctx->ifc_sysctl_ntxds[i]; in iflib_reset_qvalues()
4797 scctx->isc_ntxd[i] = sctx->isc_ntxd_default[i]; in iflib_reset_qvalues()
4802 scctx->isc_nrxd[i] = ctx->ifc_sysctl_nrxds[i]; in iflib_reset_qvalues()
4804 scctx->isc_nrxd[i] = sctx->isc_nrxd_default[i]; in iflib_reset_qvalues()
4808 if (scctx->isc_nrxd[i] < sctx->isc_nrxd_min[i]) { in iflib_reset_qvalues()
4810 i, scctx->isc_nrxd[i], sctx->isc_nrxd_min[i]); in iflib_reset_qvalues()
4811 scctx->isc_nrxd[i] = sctx->isc_nrxd_min[i]; in iflib_reset_qvalues()
4813 if (scctx->isc_nrxd[i] > sctx->isc_nrxd_max[i]) { in iflib_reset_qvalues()
4815 i, scctx->isc_nrxd[i], sctx->isc_nrxd_max[i]); in iflib_reset_qvalues()
4816 scctx->isc_nrxd[i] = sctx->isc_nrxd_max[i]; in iflib_reset_qvalues()
4818 if (!powerof2(scctx->isc_nrxd[i])) { in iflib_reset_qvalues()
4820 i, scctx->isc_nrxd[i], sctx->isc_nrxd_default[i]); in iflib_reset_qvalues()
4821 scctx->isc_nrxd[i] = sctx->isc_nrxd_default[i]; in iflib_reset_qvalues()
4826 if (scctx->isc_ntxd[i] < sctx->isc_ntxd_min[i]) { in iflib_reset_qvalues()
4828 i, scctx->isc_ntxd[i], sctx->isc_ntxd_min[i]); in iflib_reset_qvalues()
4829 scctx->isc_ntxd[i] = sctx->isc_ntxd_min[i]; in iflib_reset_qvalues()
4831 if (scctx->isc_ntxd[i] > sctx->isc_ntxd_max[i]) { in iflib_reset_qvalues()
4833 i, scctx->isc_ntxd[i], sctx->isc_ntxd_max[i]); in iflib_reset_qvalues()
4834 scctx->isc_ntxd[i] = sctx->isc_ntxd_max[i]; in iflib_reset_qvalues()
4836 if (!powerof2(scctx->isc_ntxd[i])) { in iflib_reset_qvalues()
4838 i, scctx->isc_ntxd[i], sctx->isc_ntxd_default[i]); in iflib_reset_qvalues()
4839 scctx->isc_ntxd[i] = sctx->isc_ntxd_default[i]; in iflib_reset_qvalues()
5019 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in get_cpuid_for_queue() local
5034 is_tx && qid < scctx->isc_nrxqsets) { in get_cpuid_for_queue()
5055 core_index = scctx->isc_nrxqsets + qid; in get_cpuid_for_queue()
5068 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in get_ctx_core_offset() local
5133 for (i = 0; i < scctx->isc_ntxqsets; i++) in get_ctx_core_offset()
5136 for (i = 0; i < scctx->isc_nrxqsets; i++) in get_ctx_core_offset()
5198 if_softc_ctx_t scctx; in iflib_device_register() local
5223 scctx = &ctx->ifc_softc_ctx; in iflib_device_register()
5233 _iflib_pre_assert(scctx); in iflib_device_register()
5234 ctx->ifc_txrx = *scctx->isc_txrx; in iflib_device_register()
5236 MPASS(scctx->isc_dma_width <= flsll(BUS_SPACE_MAXADDR)); in iflib_device_register()
5239 ctx->ifc_mediap = scctx->isc_media; in iflib_device_register()
5242 if (scctx->isc_capabilities & IFCAP_TXCSUM) in iflib_device_register()
5243 MPASS(scctx->isc_tx_csum_flags); in iflib_device_register()
5247 scctx->isc_capabilities | IFCAP_HWSTATS | IFCAP_MEXTPG); in iflib_device_register()
5249 scctx->isc_capenable | IFCAP_HWSTATS | IFCAP_MEXTPG); in iflib_device_register()
5251 …if (scctx->isc_ntxqsets == 0 || (scctx->isc_ntxqsets_max && scctx->isc_ntxqsets_max < scctx->isc_n… in iflib_device_register()
5252 scctx->isc_ntxqsets = scctx->isc_ntxqsets_max; in iflib_device_register()
5253 …if (scctx->isc_nrxqsets == 0 || (scctx->isc_nrxqsets_max && scctx->isc_nrxqsets_max < scctx->isc_n… in iflib_device_register()
5254 scctx->isc_nrxqsets = scctx->isc_nrxqsets_max; in iflib_device_register()
5263 if (scctx->isc_tx_nsegments > num_txd / MAX_SINGLE_PACKET_FRACTION) in iflib_device_register()
5264 scctx->isc_tx_nsegments = max(1, num_txd / in iflib_device_register()
5266 if (scctx->isc_tx_tso_segments_max > num_txd / in iflib_device_register()
5268 scctx->isc_tx_tso_segments_max = max(1, in iflib_device_register()
5277 if_sethwtsomax(ifp, min(scctx->isc_tx_tso_size_max, in iflib_device_register()
5287 if_sethwtsomaxsegcount(ifp, scctx->isc_tx_tso_segments_max - 3); in iflib_device_register()
5288 if_sethwtsomaxsegsize(ifp, scctx->isc_tx_tso_segsize_max); in iflib_device_register()
5290 if (scctx->isc_rss_table_size == 0) in iflib_device_register()
5291 scctx->isc_rss_table_size = 64; in iflib_device_register()
5292 scctx->isc_rss_table_mask = scctx->isc_rss_table_size - 1; in iflib_device_register()
5328 msix = scctx->isc_vectors; in iflib_device_register()
5329 } else if (scctx->isc_msix_bar != 0) in iflib_device_register()
5336 scctx->isc_vectors = 1; in iflib_device_register()
5337 scctx->isc_ntxqsets = 1; in iflib_device_register()
5338 scctx->isc_nrxqsets = 1; in iflib_device_register()
5339 scctx->isc_intr = IFLIB_INTR_LEGACY; in iflib_device_register()
5391 } else if (scctx->isc_intr != IFLIB_INTR_MSIX) { in iflib_device_register()
5393 if (scctx->isc_intr == IFLIB_INTR_MSI) { in iflib_device_register()
5747 _iflib_pre_assert(if_softc_ctx_t scctx) in _iflib_pre_assert() argument
5750 MPASS(scctx->isc_txrx->ift_txd_encap); in _iflib_pre_assert()
5751 MPASS(scctx->isc_txrx->ift_txd_flush); in _iflib_pre_assert()
5752 MPASS(scctx->isc_txrx->ift_txd_credits_update); in _iflib_pre_assert()
5753 MPASS(scctx->isc_txrx->ift_rxd_available); in _iflib_pre_assert()
5754 MPASS(scctx->isc_txrx->ift_rxd_pkt_get); in _iflib_pre_assert()
5755 MPASS(scctx->isc_txrx->ift_rxd_refill); in _iflib_pre_assert()
5756 MPASS(scctx->isc_txrx->ift_rxd_flush); in _iflib_pre_assert()
5850 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_queues_alloc() local
5852 int nrxqsets = scctx->isc_nrxqsets; in iflib_queues_alloc()
5853 int ntxqsets = scctx->isc_ntxqsets; in iflib_queues_alloc()
5859 uint32_t *rxqsizes = scctx->isc_rxqsizes; in iflib_queues_alloc()
5860 uint32_t *txqsizes = scctx->isc_txqsizes; in iflib_queues_alloc()
5915 txq->ift_txd_size[j] = scctx->isc_txd_size[j]; in iflib_queues_alloc()
5992 fl[j].ifl_rxd_size = scctx->isc_rxd_size[j]; in iflib_queues_alloc()
6607 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_msix_init() local
6616 imax(scctx->isc_ntxqsets, scctx->isc_nrxqsets)); in iflib_msix_init()
6619 if (scctx->isc_disable_msix) in iflib_msix_init()
6673 if (rx_queues > scctx->isc_nrxqsets) in iflib_msix_init()
6674 rx_queues = scctx->isc_nrxqsets; in iflib_msix_init()
6684 if (tx_queues > scctx->isc_ntxqsets) in iflib_msix_init()
6685 tx_queues = scctx->isc_ntxqsets; in iflib_msix_init()
6724 scctx->isc_vectors = vectors; in iflib_msix_init()
6725 scctx->isc_nrxqsets = rx_queues; in iflib_msix_init()
6726 scctx->isc_ntxqsets = tx_queues; in iflib_msix_init()
6727 scctx->isc_intr = IFLIB_INTR_MSIX; in iflib_msix_init()
6743 scctx->isc_nrxqsets = 1; in iflib_msix_init()
6744 scctx->isc_ntxqsets = 1; in iflib_msix_init()
6745 scctx->isc_vectors = vectors; in iflib_msix_init()
6748 scctx->isc_intr = IFLIB_INTR_MSI; in iflib_msix_init()
6750 scctx->isc_vectors = 1; in iflib_msix_init()
6752 scctx->isc_intr = IFLIB_INTR_LEGACY; in iflib_msix_init()
6909 if_softc_ctx_t scctx = &ctx->ifc_softc_ctx; in iflib_add_device_sysctl_post() local
6926 if (scctx->isc_ntxqsets > 100) in iflib_add_device_sysctl_post()
6928 else if (scctx->isc_ntxqsets > 10) in iflib_add_device_sysctl_post()
6932 for (i = 0, txq = ctx->ifc_txqs; i < scctx->isc_ntxqsets; i++, txq++) { in iflib_add_device_sysctl_post()
7005 if (scctx->isc_nrxqsets > 100) in iflib_add_device_sysctl_post()
7007 else if (scctx->isc_nrxqsets > 10) in iflib_add_device_sysctl_post()
7011 for (i = 0, rxq = ctx->ifc_rxqs; i < scctx->isc_nrxqsets; i++, rxq++) { in iflib_add_device_sysctl_post()
7113 if_softc_ctx_t scctx; in iflib_debugnet_event() local
7119 scctx = &ctx->ifc_softc_ctx; in iflib_debugnet_event()
7123 for (i = 0; i < scctx->isc_nrxqsets; i++) { in iflib_debugnet_event()
7161 if_softc_ctx_t scctx; in iflib_debugnet_poll() local
7166 scctx = &ctx->ifc_softc_ctx; in iflib_debugnet_poll()
7176 for (i = 0; i < scctx->isc_nrxqsets; i++) in iflib_debugnet_poll()