/titanic_44/usr/src/uts/common/io/bnxe/ |
H A D | bnxe_main.c | 68 um_device_t * pUM = (um_device_t *)pDev; in BnxeInstance() local 69 return (pUM == NULL) ? 0xf : pUM->instance; in BnxeInstance() 76 um_device_t * pUM = (um_device_t *)pDev; in BnxeDevName() local 77 return ((pUM == NULL) || (*pUM->devName == 0)) ? "(bnxe)" : pUM->devName; in BnxeDevName() 81 char * BnxeChipName(um_device_t * pUM) in BnxeChipName() argument 83 switch (CHIP_NUM(&pUM->lm_dev) >> 16) in BnxeChipName() 103 boolean_t BnxeProtoSupport(um_device_t * pUM, int proto) in BnxeProtoSupport() argument 109 if (IS_MULTI_VNIC(&pUM->lm_dev)) in BnxeProtoSupport() 114 if (pUM->lm_dev.hw_info.mcp_detected == 1) in BnxeProtoSupport() 116 if (pUM->lm_dev.params.mf_proto_support_flags & in BnxeProtoSupport() [all …]
|
H A D | bnxe_lock.c | 39 void BNXE_LOCK_ENTER_INTR (um_device_t * pUM, int idx) { mutex_enter(&pUM->intrMutex[idx]… in BNXE_LOCK_ENTER_INTR() argument 40 void BNXE_LOCK_EXIT_INTR (um_device_t * pUM, int idx) { mutex_exit(&pUM->intrMutex[idx])… in BNXE_LOCK_EXIT_INTR() argument 41 void BNXE_LOCK_ENTER_INTR_FLIP (um_device_t * pUM, int idx) { mutex_enter(&pUM->intrFlipMutex[… in BNXE_LOCK_ENTER_INTR_FLIP() argument 42 void BNXE_LOCK_EXIT_INTR_FLIP (um_device_t * pUM, int idx) { mutex_exit(&pUM->intrFlipMutex[i… in BNXE_LOCK_EXIT_INTR_FLIP() argument 43 void BNXE_LOCK_ENTER_TX (um_device_t * pUM, int idx) { mutex_enter(&pUM->txq[idx].txMut… in BNXE_LOCK_ENTER_TX() argument 44 void BNXE_LOCK_EXIT_TX (um_device_t * pUM, int idx) { mutex_exit(&pUM->txq[idx].txMute… in BNXE_LOCK_EXIT_TX() argument 45 void BNXE_LOCK_ENTER_FREETX (um_device_t * pUM, int idx) { mutex_enter(&pUM->txq[idx].freeT… in BNXE_LOCK_ENTER_FREETX() argument 46 void BNXE_LOCK_EXIT_FREETX (um_device_t * pUM, int idx) { mutex_exit(&pUM->txq[idx].freeTx… in BNXE_LOCK_EXIT_FREETX() argument 47 void BNXE_LOCK_ENTER_RX (um_device_t * pUM, int idx) { mutex_enter(&pUM->rxq[idx].rxMut… in BNXE_LOCK_ENTER_RX() argument 48 void BNXE_LOCK_EXIT_RX (um_device_t * pUM, int idx) { mutex_exit(&pUM->rxq[idx].rxMute… in BNXE_LOCK_EXIT_RX() argument [all …]
|
H A D | bnxe_hw.c | 44 static void BnxeVerifySavedDmaList(um_device_t * pUM) in BnxeVerifySavedDmaList() argument 49 BNXE_LOCK_ENTER_MEM(pUM); in BnxeVerifySavedDmaList() 51 pTmp = (BnxeMemDma *)d_list_peek_head(&pUM->memDmaListSaved); in BnxeVerifySavedDmaList() 54 BnxeLogWarn(pUM, "testing dma block %p / %p %d", in BnxeVerifySavedDmaList() 60 BnxeDbgBreakMsg(pUM, "old dma block wacked %p (byte %i)", in BnxeVerifySavedDmaList() 68 BNXE_LOCK_EXIT_MEM(pUM); in BnxeVerifySavedDmaList() 74 static boolean_t BnxeRssEnable(um_device_t * pUM) in BnxeRssEnable() argument 83 if (!pUM->devParams.numRings) in BnxeRssEnable() 91 indirectionTable[i] = (i % pUM->devParams.numRings); in BnxeRssEnable() 102 rc = lm_enable_rss((lm_device_t *)pUM, in BnxeRssEnable() [all …]
|
H A D | bnxe_intr.c | 76 static void BnxeFindDmaHandles(um_device_t * pUM) in BnxeFindDmaHandles() argument 82 BNXE_LOCK_ENTER_MEM(pUM); in BnxeFindDmaHandles() 86 LM_FOREACH_SB_ID(&pUM->lm_dev, idx) in BnxeFindDmaHandles() 88 if (CHIP_IS_E1x(&pUM->lm_dev)) in BnxeFindDmaHandles() 91 … pUM->lm_dev.vars.status_blocks_arr[idx].hc_status_block_data.e1x_sb_data.common.host_sb_addr.lo; in BnxeFindDmaHandles() 93 … pUM->lm_dev.vars.status_blocks_arr[idx].hc_status_block_data.e1x_sb_data.common.host_sb_addr.hi; in BnxeFindDmaHandles() 98 … pUM->lm_dev.vars.status_blocks_arr[idx].hc_status_block_data.e2_sb_data.common.host_sb_addr.lo; in BnxeFindDmaHandles() 100 … pUM->lm_dev.vars.status_blocks_arr[idx].hc_status_block_data.e2_sb_data.common.host_sb_addr.hi; in BnxeFindDmaHandles() 103 pTmp = (BnxeMemDma *)d_list_peek_head(&pUM->memDmaList); in BnxeFindDmaHandles() 116 BnxeLogWarn(pUM, "Failed to find DMA handle for RSS status block %d", idx); in BnxeFindDmaHandles() [all …]
|
H A D | bnxe_cfg.c | 59 static void BnxeCfgGetVal(um_device_t * pUM, in BnxeCfgGetVal() argument 74 pUM->pDev, in BnxeCfgGetVal() 81 snprintf(name, BNXE_CFG_NAME_LEN_MAX, "bnxe%d_%s", pUM->instance, pName); in BnxeCfgGetVal() 84 pUM->pDev, in BnxeCfgGetVal() 100 void BnxeCfg_LLDP_DCBX(um_device_t * pUM) in BnxeCfg_LLDP_DCBX() argument 102 lm_device_t * pLM = &pUM->lm_dev; in BnxeCfg_LLDP_DCBX() 128 BnxeCfgGetVal(pUM, "lldp_overwrite_settings", in BnxeCfg_LLDP_DCBX() 133 BnxeCfgGetVal(pUM, "lldp_msg_tx_hold", in BnxeCfg_LLDP_DCBX() 138 BnxeCfgGetVal(pUM, "lldp_msg_fast_tx", in BnxeCfg_LLDP_DCBX() 143 BnxeCfgGetVal(pUM, "lldp_tx_credit_max", in BnxeCfg_LLDP_DCBX() [all …]
|
H A D | bnxe_fcoe.c | 38 #define VERIFY_FCOE_BINDING(pUM) \ argument 39 if (!BNXE_FCOE(pUM)) \ 41 BnxeLogWarn((pUM), "FCoE not supported on this device!"); \ 44 if (!(CLIENT_BOUND(pUM, LM_CLI_IDX_FCOE))) \ 46 BnxeLogWarn((pUM), "FCoE client not bound!"); \ 51 void BnxeFcoeFreeResc(um_device_t * pUM, in BnxeFcoeFreeResc() argument 54 BNXE_LOCK_ENTER_OFFLOAD(pUM); in BnxeFcoeFreeResc() 55 lm_fc_del_fcoe_state(&pUM->lm_dev, &pFcoeState->lm_fcoe); in BnxeFcoeFreeResc() 56 BNXE_LOCK_EXIT_OFFLOAD(pUM); in BnxeFcoeFreeResc() 58 lm_fc_free_con_resc(&pUM->lm_dev, &pFcoeState->lm_fcoe); in BnxeFcoeFreeResc() [all …]
|
H A D | bnxe.h | 363 void * pUM; /* backpointer to um_device_t */ member 400 void * pUM; /* backpointer to um_device_t for free routine */ member 412 void * pUM; /* backpointer to um_device_t */ member 439 void * pUM; /* backpointer to um_device_t */ member 448 void * pUM; /* reference back to um_device_t */ member 515 void * pUM; member 542 #define CLIENT_DEVI(pUM, client) \ argument 543 ((pUM)->clientState[(client)] & CLIENT_FLG_DEVI) 545 #define CLIENT_HW(pUM, client) \ argument 546 ((pUM)->clientState[(client)] & CLIENT_FLG_HW) [all …]
|
H A D | bnxe_workq.c | 63 boolean_t BnxeWorkQueueInit(um_device_t * pUM) in BnxeWorkQueueInit() argument 65 pUM->workqs.instq.pUM = pUM; in BnxeWorkQueueInit() 67 strcpy(pUM->workqs.instq.taskqName, pUM->devName); in BnxeWorkQueueInit() 68 strcat(pUM->workqs.instq.taskqName, "_inst_q"); in BnxeWorkQueueInit() 70 mutex_init(&pUM->workqs.instq.workQueueMutex, NULL, in BnxeWorkQueueInit() 71 MUTEX_DRIVER, DDI_INTR_PRI(pUM->intrPriority)); in BnxeWorkQueueInit() 73 if ((pUM->workqs.instq.pTaskq = in BnxeWorkQueueInit() 74 ddi_taskq_create(pUM->pDev, in BnxeWorkQueueInit() 75 pUM->workqs.instq.taskqName, in BnxeWorkQueueInit() 80 BnxeLogWarn(pUM, "Failed to create the workqs instq"); in BnxeWorkQueueInit() [all …]
|
H A D | bnxe_rx.c | 59 static void BnxeRxPostBuffers(um_device_t * pUM, in BnxeRxPostBuffers() argument 63 lm_rx_chain_t * pLmRxChain = &LM_RXQ(&pUM->lm_dev, idx); in BnxeRxPostBuffers() 75 BNXE_LOCK_ENTER_RX(pUM, idx); in BnxeRxPostBuffers() 77 if (pUM->rxq[idx].rxLowWater > s_list_entry_cnt(&pLmRxChain->active_descq)) in BnxeRxPostBuffers() 79 pUM->rxq[idx].rxLowWater = s_list_entry_cnt(&pLmRxChain->active_descq); in BnxeRxPostBuffers() 82 lm_return_packet_bytes(&pUM->lm_dev, idx, returnedBytes); in BnxeRxPostBuffers() 94 BNXE_LOCK_EXIT_RX(pUM, idx); in BnxeRxPostBuffers() 103 BNXE_LOCK_EXIT_RX(pUM, idx); in BnxeRxPostBuffers() 108 lm_post_buffers(&pUM->lm_dev, idx, NULL, 0); in BnxeRxPostBuffers() 110 BNXE_LOCK_EXIT_RX(pUM, idx); in BnxeRxPostBuffers() [all …]
|
H A D | bnxe_gld.c | 114 um_device_t * pUM = (um_device_t *)pArg; in BnxeMacStats() local 119 if ((pUM == NULL) || (pVal == NULL)) in BnxeMacStats() 124 pLM = &pUM->lm_dev; in BnxeMacStats() 126 BNXE_LOCK_ENTER_GLD(pUM); in BnxeMacStats() 128 if (!pUM->plumbed) in BnxeMacStats() 130 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacStats() 139 *pVal = (pUM->props.link_speed * 1000000ULL); in BnxeMacStats() 174 *pVal += pUM->txq[idx].txRecycle; in BnxeMacStats() 296 switch (pUM->props.link_speed) in BnxeMacStats() 377 *pVal = pUM->curcfg.lnkcfg.param_10000fdx; in BnxeMacStats() [all …]
|
H A D | bnxe_timer.c | 46 um_device_t * pUM = (um_device_t *)pArg; in BnxeTimer() local 47 lm_device_t * pLM = &pUM->lm_dev; in BnxeTimer() 49 BNXE_LOCK_ENTER_TIMER(pUM); in BnxeTimer() 51 if (pUM->timerEnabled != B_TRUE) in BnxeTimer() 53 BNXE_LOCK_EXIT_TIMER(pUM); in BnxeTimer() 59 if (pUM->fmCapabilities && in BnxeTimer() 62 ddi_fm_service_impact(pUM->pDev, DDI_SERVICE_UNAFFECTED); in BnxeTimer() 65 if (pUM->phyInitialized) in BnxeTimer() 67 BNXE_LOCK_ENTER_PHY(pUM); in BnxeTimer() 69 BNXE_LOCK_EXIT_PHY(pUM); in BnxeTimer() [all …]
|
H A D | bnxe_mm.c | 111 um_device_t * pUM = (um_device_t *)pDev; in mm_read_pci() local 113 *pRegValue = pci_config_get32(pUM->pPciCfg, (off_t)pciReg); in mm_read_pci() 123 um_device_t * pUM = (um_device_t *)pDev; in mm_write_pci() local 125 pci_config_put32(pUM->pPciCfg, (off_t)pciReg, regValue); in mm_write_pci() 131 void BnxeInitBdCnts(um_device_t * pUM, in BnxeInitBdCnts() argument 134 lm_device_t * pLM = (lm_device_t *)pUM; in BnxeInitBdCnts() 160 um_device_t * pUM = (um_device_t *)pLM; in mm_get_user_config() local 164 BnxeCfgInit(pUM); in mm_get_user_config() 189 pLM->params.l2_rx_desc_cnt[LM_CLI_IDX_NDIS] = pUM->devParams.numRxDesc[LM_CLI_IDX_NDIS]; in mm_get_user_config() 193 BnxeInitBdCnts(pUM, LM_CLI_IDX_NDIS); in mm_get_user_config() [all …]
|
H A D | bnxe_tx.c | 74 static um_txpacket_t * BnxeTxPktAlloc(um_device_t * pUM, size_t size); 136 void BnxeTxPktsReclaim(um_device_t * pUM, in BnxeTxPktsReclaim() argument 163 BNXE_LOCK_ENTER_FREETX(pUM, idx); in BnxeTxPktsReclaim() 164 s_list_add_tail(&pUM->txq[idx].freeTxDescQ, pPktList); in BnxeTxPktsReclaim() 165 BNXE_LOCK_EXIT_FREETX(pUM, idx); in BnxeTxPktsReclaim() 170 static int BnxeTxSendWaitingPkt(um_device_t * pUM, in BnxeTxSendWaitingPkt() argument 173 TxQueue * pTxQ = &pUM->txq[idx]; in BnxeTxSendWaitingPkt() 174 lm_device_t * pLM = &pUM->lm_dev; in BnxeTxSendWaitingPkt() 194 if (pUM->fmCapabilities && in BnxeTxSendWaitingPkt() 197 ddi_fm_service_impact(pUM->pDev, DDI_SERVICE_DEGRADED); in BnxeTxSendWaitingPkt() [all …]
|
H A D | bnxe_kstat.c | 570 um_device_t * pUM = (um_device_t *)kstats->ks_private; in BnxeKstatUpdate() local 571 lm_device_t * pLM = (lm_device_t *)pUM; in BnxeKstatUpdate() 579 BNXE_LOCK_ENTER_STATS(pUM); in BnxeKstatUpdate() 581 snprintf(buf, sizeof(buf), "%p", (void *)pUM); in BnxeKstatUpdate() 587 strncpy(pStats->version.value.c, pUM->version, sizeof(pStats->version.value.c)); in BnxeKstatUpdate() 588 strncpy(pStats->versionFW.value.c, pUM->versionFW, sizeof(pStats->versionFW.value.c)); in BnxeKstatUpdate() 589 strncpy(pStats->versionBC.value.c, pUM->versionBC, sizeof(pStats->versionBC.value.c)); in BnxeKstatUpdate() 591 strncpy(pStats->chipName.value.c, pUM->chipName, sizeof(pStats->chipName.value.c)); in BnxeKstatUpdate() 592 strncpy(pStats->chipID.value.c, pUM->chipID, sizeof(pStats->chipID.value.c)); in BnxeKstatUpdate() 594 strncpy(pStats->devBDF.value.c, pUM->bus_dev_func, sizeof(pStats->devBDF.value.c)); in BnxeKstatUpdate() [all …]
|
H A D | bnxe_debug.c | 47 um_device_t * pUM = (um_device_t *)pDev; in DbgMessageFunc() local 51 if ((pUM != NULL) && in DbgMessageFunc() 52 (((pUM->devParams.debug_level & level & CP_ALL) != (level & CP_ALL)) || in DbgMessageFunc() 53 ((pUM->devParams.debug_level & LV_MASK) < (level & LV_MASK)))) in DbgMessageFunc() 73 um_device_t * pUM = (um_device_t *)bp; in elink_cb_dbg() local 77 if ((pUM->devParams.debug_level & LV_MASK) < LV_WARN) in elink_cb_dbg() 83 cmn_err(CE_NOTE, "!%s: ELINK %s", BnxeDevName(pUM), buf); in elink_cb_dbg() 90 um_device_t * pUM = (um_device_t *)bp; in elink_cb_dbg1() local 94 if ((pUM->devParams.debug_level & LV_MASK) < LV_WARN) in elink_cb_dbg1() 100 cmn_err(CE_NOTE, "!%s: ELINK %s", BnxeDevName(pUM), buf); in elink_cb_dbg1() [all …]
|
H A D | bnxe_rr.c | 41 int BnxeRouteTxRing(um_device_t * pUM, in BnxeRouteTxRing() argument 44 u32_t numRings = pUM->devParams.numRings; in BnxeRouteTxRing() 66 switch (pUM->devParams.routeTxRingPolicy) in BnxeRouteTxRing()
|