Lines Matching refs:pUM
116 um_device_t * pUM = (um_device_t *)pArg; in BnxeMacStats() local
121 if ((pUM == NULL) || (pVal == NULL)) in BnxeMacStats()
126 pLM = &pUM->lm_dev; in BnxeMacStats()
128 BNXE_LOCK_ENTER_GLD(pUM); in BnxeMacStats()
130 if (!pUM->plumbed) in BnxeMacStats()
132 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacStats()
141 *pVal = (pUM->props.link_speed * 1000000ULL); in BnxeMacStats()
176 *pVal += pUM->txq[idx].txRecycle; in BnxeMacStats()
298 *pVal = (uint64_t)bnxe_phy_to_media(pUM); in BnxeMacStats()
358 *pVal = pUM->curcfg.lnkcfg.param_10000fdx; in BnxeMacStats()
363 *pVal = pUM->curcfg.lnkcfg.param_1000fdx; in BnxeMacStats()
374 *pVal = pUM->curcfg.lnkcfg.param_100fdx; in BnxeMacStats()
378 *pVal = pUM->curcfg.lnkcfg.param_100hdx; in BnxeMacStats()
382 *pVal = pUM->curcfg.lnkcfg.param_10fdx; in BnxeMacStats()
386 *pVal = pUM->curcfg.lnkcfg.param_10hdx; in BnxeMacStats()
398 *pVal = pUM->curcfg.lnkcfg.link_autoneg; in BnxeMacStats()
410 *pVal = pUM->remote.param_10000fdx; in BnxeMacStats()
415 *pVal = pUM->remote.param_1000fdx; in BnxeMacStats()
426 *pVal = pUM->remote.param_100fdx; in BnxeMacStats()
430 *pVal = pUM->remote.param_100hdx; in BnxeMacStats()
434 *pVal = pUM->remote.param_10fdx; in BnxeMacStats()
438 *pVal = pUM->remote.param_10hdx; in BnxeMacStats()
452 *pVal = pUM->remote.link_autoneg; in BnxeMacStats()
471 *pVal = pUM->curcfg.lnkcfg.link_autoneg; in BnxeMacStats()
475 *pVal = (pUM->props.link_duplex == B_TRUE) ? in BnxeMacStats()
483 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacStats()
496 um_device_t * pUM = (um_device_t *)pArg; in BnxeMacStart() local
498 BNXE_LOCK_ENTER_GLD(pUM); in BnxeMacStart()
500 if (pUM->plumbed) in BnxeMacStart()
503 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacStart()
508 mac_link_update(pUM->pMac, LINK_STATE_UNKNOWN); in BnxeMacStart()
510 if (BnxeHwStartL2(pUM)) in BnxeMacStart()
512 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacStart()
516 atomic_swap_32(&pUM->plumbed, B_TRUE); in BnxeMacStart()
522 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacStart()
534 um_device_t * pUM = (um_device_t *)pArg; in BnxeMacStop() local
536 BNXE_LOCK_ENTER_GLD(pUM); in BnxeMacStop()
538 if (pUM->plumbed) in BnxeMacStop()
540 atomic_swap_32(&pUM->plumbed, B_FALSE); in BnxeMacStop()
542 BnxeHwStopL2(pUM); in BnxeMacStop()
545 mac_link_update(pUM->pMac, LINK_STATE_UNKNOWN); in BnxeMacStop()
552 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacStop()
559 um_device_t * pUM = (um_device_t *)pArg; in BnxeMacPromiscuous() local
561 BNXE_LOCK_ENTER_GLD(pUM); in BnxeMacPromiscuous()
563 if (!pUM->plumbed) in BnxeMacPromiscuous()
565 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacPromiscuous()
571 pUM->devParams.rx_filter_mask[LM_CLI_IDX_NDIS] |= in BnxeMacPromiscuous()
576 pUM->devParams.rx_filter_mask[LM_CLI_IDX_NDIS] &= in BnxeMacPromiscuous()
580 BNXE_LOCK_ENTER_HWINIT(pUM); in BnxeMacPromiscuous()
582 if (BnxeRxMask(pUM, LM_CLI_IDX_NDIS, in BnxeMacPromiscuous()
583 pUM->devParams.rx_filter_mask[LM_CLI_IDX_NDIS]) < 0) in BnxeMacPromiscuous()
585 BNXE_LOCK_EXIT_HWINIT(pUM); in BnxeMacPromiscuous()
586 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacPromiscuous()
590 BNXE_LOCK_EXIT_HWINIT(pUM); in BnxeMacPromiscuous()
592 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacPromiscuous()
607 um_device_t * pUM = (um_device_t *)pArg; in BnxeMacMulticast() local
610 BNXE_LOCK_ENTER_GLD(pUM); in BnxeMacMulticast()
612 if (!pUM->plumbed) in BnxeMacMulticast()
614 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacMulticast()
618 BNXE_LOCK_ENTER_HWINIT(pUM); in BnxeMacMulticast()
619 rc = BnxeMulticast(pUM, LM_CLI_IDX_NDIS, flag, pMcastAddr, B_TRUE); in BnxeMacMulticast()
620 BNXE_LOCK_EXIT_HWINIT(pUM); in BnxeMacMulticast()
622 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacMulticast()
640 um_device_t * pUM = (um_device_t *)pRxQGroup->pUM; in BnxeRxRingGroupAddMac() local
648 BNXE_LOCK_ENTER_GLD(pUM); in BnxeRxRingGroupAddMac()
650 if (!pUM->plumbed) in BnxeRxRingGroupAddMac()
652 BNXE_LOCK_EXIT_GLD(pUM); in BnxeRxRingGroupAddMac()
659 BnxeLogWarn(pUM, "Cannot program a mcast/bcast address as a MAC Address."); in BnxeRxRingGroupAddMac()
660 BNXE_LOCK_EXIT_GLD(pUM); in BnxeRxRingGroupAddMac()
664 if (pUM->ucastTableLen == LM_MAX_UC_TABLE_SIZE) in BnxeRxRingGroupAddMac()
666 BNXE_LOCK_EXIT_GLD(pUM); in BnxeRxRingGroupAddMac()
670 BNXE_LOCK_ENTER_HWINIT(pUM); in BnxeRxRingGroupAddMac()
672 COPY_ETH_ADDRESS(pMacAddr, pUM->lm_dev.params.mac_addr); in BnxeRxRingGroupAddMac()
674 rc = BnxeMacAddress(pUM, LM_CLI_IDX_NDIS, B_TRUE, in BnxeRxRingGroupAddMac()
675 pUM->lm_dev.params.mac_addr); in BnxeRxRingGroupAddMac()
677 BNXE_LOCK_EXIT_HWINIT(pUM); in BnxeRxRingGroupAddMac()
681 BNXE_LOCK_EXIT_GLD(pUM); in BnxeRxRingGroupAddMac()
685 pUM->ucastTableLen++; in BnxeRxRingGroupAddMac()
687 BNXE_LOCK_EXIT_GLD(pUM); in BnxeRxRingGroupAddMac()
696 um_device_t * pUM = (um_device_t *)pRxQGroup->pUM; in BnxeRxRingGroupRemMac() local
700 BNXE_LOCK_ENTER_GLD(pUM); in BnxeRxRingGroupRemMac()
702 if (!pUM->plumbed) in BnxeRxRingGroupRemMac()
704 BNXE_LOCK_EXIT_GLD(pUM); in BnxeRxRingGroupRemMac()
708 if (pUM->ucastTableLen == 0) in BnxeRxRingGroupRemMac()
710 BNXE_LOCK_EXIT_GLD(pUM); in BnxeRxRingGroupRemMac()
714 BNXE_LOCK_ENTER_HWINIT(pUM); in BnxeRxRingGroupRemMac()
716 if (!IS_ETH_ADDRESS_EQUAL(pMacAddr, pUM->lm_dev.params.mac_addr)) in BnxeRxRingGroupRemMac()
718 BnxeLogWarn(pUM, "Deleting MAC address that doesn't match default"); in BnxeRxRingGroupRemMac()
722 rc = BnxeMacAddress(pUM, LM_CLI_IDX_NDIS, B_FALSE, in BnxeRxRingGroupRemMac()
723 pUM->lm_dev.params.mac_addr); in BnxeRxRingGroupRemMac()
725 memset(pUM->lm_dev.params.mac_addr, 0, sizeof(pUM->lm_dev.params.mac_addr)); in BnxeRxRingGroupRemMac()
727 BNXE_LOCK_EXIT_HWINIT(pUM); in BnxeRxRingGroupRemMac()
731 BNXE_LOCK_EXIT_GLD(pUM); in BnxeRxRingGroupRemMac()
735 pUM->ucastTableLen--; in BnxeRxRingGroupRemMac()
737 BNXE_LOCK_EXIT_GLD(pUM); in BnxeRxRingGroupRemMac()
746 um_device_t * pUM = (um_device_t *)pTxQ->pUM; in BnxeTxRingSend() local
756 rc = BnxeTxSendMblk(pUM, idx, pMblk, 0, 0); in BnxeTxRingSend()
784 um_device_t * pUM = (um_device_t *)pArg; in BnxeMacUnicast() local
787 BNXE_LOCK_ENTER_GLD(pUM); in BnxeMacUnicast()
789 if (!pUM->plumbed) in BnxeMacUnicast()
791 memcpy(pUM->gldMac, pMacAddr, ETHERNET_ADDRESS_SIZE); in BnxeMacUnicast()
792 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacUnicast()
799 BnxeLogWarn(pUM, "Cannot program a mcast/bcast address as a MAC Address."); in BnxeMacUnicast()
800 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacUnicast()
804 BNXE_LOCK_ENTER_HWINIT(pUM); in BnxeMacUnicast()
806 COPY_ETH_ADDRESS(pMacAddr, pUM->lm_dev.params.mac_addr); in BnxeMacUnicast()
808 rc = BnxeMacAddress(pUM, LM_CLI_IDX_NDIS, B_TRUE, in BnxeMacUnicast()
809 pUM->lm_dev.params.mac_addr); in BnxeMacUnicast()
811 BNXE_LOCK_EXIT_HWINIT(pUM); in BnxeMacUnicast()
815 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacUnicast()
819 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacUnicast()
827 um_device_t * pUM = (um_device_t *)pArg; in BnxeMacTx() local
831 BNXE_LOCK_ENTER_GLDTX(pUM, RW_READER); in BnxeMacTx()
833 if (!pUM->plumbed) in BnxeMacTx()
836 BNXE_LOCK_EXIT_GLDTX(pUM); in BnxeMacTx()
843 ring = BnxeRouteTxRing(pUM, pMblk); in BnxeMacTx()
849 rc = BnxeTxSendMblk(pUM, ring, pMblk, 0, 0); in BnxeMacTx()
868 BNXE_LOCK_EXIT_GLDTX(pUM); in BnxeMacTx()
880 um_device_t * pUM = (um_device_t *)pArg; in BnxeBlank() local
882 if (!pUM->plumbed) in BnxeBlank()
896 um_device_t * pUM = (um_device_t *)pArg; in BnxeMacResources() local
902 mrf.mrf_arg = (void *)pUM; in BnxeMacResources()
906 LM_FOREACH_RSS_IDX(&pUM->lm_dev, idx) in BnxeMacResources()
908 pUM->macRxResourceHandles[idx] = in BnxeMacResources()
909 mac_resource_add(pUM->pMac, (mac_resource_t *)&mrf); in BnxeMacResources()
916 static boolean_t BnxeReadReg(um_device_t * pUM, in BnxeReadReg() argument
921 BnxeLogWarn(pUM, "Invalid register offset for GIOCBNXEREG ioctl"); in BnxeReadReg()
925 LM_BAR_RD32_OFFSET(&pUM->lm_dev, 0, pData->offset, &pData->value); in BnxeReadReg()
931 static boolean_t BnxeWriteReg(um_device_t * pUM, in BnxeWriteReg() argument
936 BnxeLogWarn(pUM, "Invalid register offset for SIOCBNXEREG ioctl"); in BnxeWriteReg()
940 LM_BAR_WR32_OFFSET(&pUM->lm_dev, 0, pData->offset, pData->value); in BnxeWriteReg()
946 static boolean_t BnxeReadNvm(um_device_t * pUM, in BnxeReadNvm() argument
951 BnxeLogWarn(pUM, "Invalid register offset for GIOCBNXENVRM ioctl"); in BnxeReadNvm()
955 if (lm_nvram_read(&pUM->lm_dev, in BnxeReadNvm()
968 static boolean_t BnxeWriteNvm(um_device_t * pUM, in BnxeWriteNvm() argument
973 BnxeLogWarn(pUM, "Invalid register offset for SIOCBNXENVRM ioctl"); in BnxeWriteNvm()
977 if (lm_nvram_write(&pUM->lm_dev, in BnxeWriteNvm()
990 static boolean_t BnxeReadPciCfg(um_device_t * pUM, in BnxeReadPciCfg() argument
993 pData->value = pci_config_get32(pUM->pPciCfg, (off_t)pData->offset); in BnxeReadPciCfg()
1027 static boolean_t BnxeStatsShow(um_device_t * pUM, in BnxeStatsShow() argument
1222 lm_stats_get_l2_chip_stats(&pUM->lm_dev, in BnxeStatsShow()
1226 lm_stats_get_l4_chip_stats(&pUM->lm_dev, in BnxeStatsShow()
1229 lm_stats_get_l2_driver_stats(&pUM->lm_dev in BnxeStatsShow()
1232 lm_stats_get_l4_driver_stats(&pUM->lm_dev, in BnxeStatsShow()
1247 um_device_t * pUM = (um_device_t *)pArg; in BnxeMacIoctl() local
1264 BNXE_LOCK_ENTER_GLD(pUM); in BnxeMacIoctl()
1285 if (lm_dcbx_lldp_read_params(&pUM->lm_dev, in BnxeMacIoctl()
1290 (!IS_DCB_ENABLED(&pUM->lm_dev)) ? ENOTSUP : EINVAL); in BnxeMacIoctl()
1314 if (lm_dcbx_read_params(&pUM->lm_dev, in BnxeMacIoctl()
1319 (!IS_DCB_ENABLED(&pUM->lm_dev)) ? ENOTSUP : EINVAL); in BnxeMacIoctl()
1342 if (!BnxeReadReg(pUM, (struct bnxe_reg_data *)pMblk->b_cont->b_rptr)) in BnxeMacIoctl()
1363 if (!BnxeWriteReg(pUM, (struct bnxe_reg_data *)pMblk->b_cont->b_rptr)) in BnxeMacIoctl()
1384 if (!BnxeReadNvm(pUM, (struct bnxe_nvram_data *)pMblk->b_cont->b_rptr)) in BnxeMacIoctl()
1405 if (!BnxeWriteNvm(pUM, (struct bnxe_nvram_data *)pMblk->b_cont->b_rptr)) in BnxeMacIoctl()
1426 if (!BnxeReadPciCfg(pUM, (struct bnxe_reg_data *)pMblk->b_cont->b_rptr)) in BnxeMacIoctl()
1448 if (!BnxeStatsShow(pUM, in BnxeMacIoctl()
1467 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacIoctl()
1483 um_device_t * pUM = (um_device_t *)pRxQ->pUM; in BnxeRxRingPoll() local
1500 BnxeLogWarn(pUM, "Polling on ring %d when NOT in poll mode!", idx); in BnxeRxRingPoll()
1504 BNXE_LOCK_ENTER_INTR(pUM, idx); in BnxeRxRingPoll()
1508 BnxePollRxRing(pUM, idx, &pktsRxed, &pktsTxed); in BnxeRxRingPoll()
1510 if (pktsTxed) BnxeTxRingProcess(pUM, idx); in BnxeRxRingPoll()
1511 if (pktsRxed) pMblk = BnxeRxRingProcess(pUM, idx, TRUE, numBytes); in BnxeRxRingPoll()
1518 lm_sq_post_pending(&pUM->lm_dev); in BnxeRxRingPoll()
1520 BNXE_LOCK_EXIT_INTR(pUM, idx); in BnxeRxRingPoll()
1533 um_device_t * pUM = (um_device_t *)pRxQ->pUM; in BnxeRxRingStart() local
1536 BnxeLogDbg(pUM, "Starting Rx Ring %d", idx); in BnxeRxRingStart()
1538 BNXE_LOCK_ENTER_RX(pUM, idx); in BnxeRxRingStart()
1546 BNXE_LOCK_EXIT_RX(pUM, idx); in BnxeRxRingStart()
1559 um_device_t * pUM = (um_device_t *)pRxQ->pUM; in BnxeRingStat() local
1586 um_device_t * pUM = (um_device_t *)pRxQ->pUM; in BnxeRxRingIntrEnable() local
1588 BnxeLogDbg(pUM, "Enabling Interrupt for Rx Ring %d", pRxQ->idx); in BnxeRxRingIntrEnable()
1591 if ((pRxQ->idx == LM_NON_RSS_SB(&pUM->lm_dev)) && in BnxeRxRingIntrEnable()
1592 CLIENT_BOUND(pUM, LM_CLI_IDX_FCOE) && in BnxeRxRingIntrEnable()
1593 (pUM->rssIntr.intrCount == LM_MAX_RSS_CHAINS(&pUM->lm_dev))) in BnxeRxRingIntrEnable()
1598 BnxeIntrIguSbEnable(pUM, pRxQ->idx, B_FALSE); in BnxeRxRingIntrEnable()
1611 um_device_t * pUM = (um_device_t *)pRxQ->pUM; in BnxeRxRingIntrDisable() local
1613 BnxeLogDbg(pUM, "Disabling Interrupt for Rx Ring %d", pRxQ->idx); in BnxeRxRingIntrDisable()
1616 if ((pRxQ->idx == LM_NON_RSS_SB(&pUM->lm_dev)) && in BnxeRxRingIntrDisable()
1617 CLIENT_BOUND(pUM, LM_CLI_IDX_FCOE) && in BnxeRxRingIntrDisable()
1618 (pUM->rssIntr.intrCount == LM_MAX_RSS_CHAINS(&pUM->lm_dev))) in BnxeRxRingIntrDisable()
1623 BnxeIntrIguSbDisable(pUM, pRxQ->idx, B_FALSE); in BnxeRxRingIntrDisable()
1637 um_device_t * pUM = (um_device_t *)arg; in BnxeFillRing() local
1645 BnxeLogInfo(pUM, "Initializing Rx Ring %d (Ring Group %d)", in BnxeFillRing()
1649 ASSERT(ringIndex < pUM->devParams.numRings); in BnxeFillRing()
1651 pRxQ = &pUM->rxq[ringIndex]; in BnxeFillRing()
1672 BnxeLogInfo(pUM, "Initializing Tx Ring %d (Ring Group %d)", in BnxeFillRing()
1676 ASSERT(ringIndex < pUM->devParams.numRings); in BnxeFillRing()
1678 pTxQ = &pUM->txq[ringIndex]; in BnxeFillRing()
1704 um_device_t * pUM = (um_device_t *)arg; in BnxeFillGroup() local
1711 BnxeLogInfo(pUM, "Initializing Rx Group %d", ringGroupIndex); in BnxeFillGroup()
1713 pRxQGroup = &pUM->rxqGroup[ringGroupIndex]; in BnxeFillGroup()
1721 pGroupInfo->mgi_count = (pUM->devParams.numRings / in BnxeFillGroup()
1742 um_device_t * pUM = (um_device_t *)pArg; in BnxeMacGetCapability() local
1752 if (pUM->devParams.enabled_oflds & in BnxeMacGetCapability()
1758 if (pUM->devParams.enabled_oflds & in BnxeMacGetCapability()
1771 if (pUM->devParams.lsoEnable) in BnxeMacGetCapability()
1784 if (!pUM->devParams.numRings) in BnxeMacGetCapability()
1796 pCapRings->mr_rnum = pUM->devParams.numRings; in BnxeMacGetCapability()
1845 return bnxe_fill_transceiver(pUM, pCapabilityData); in BnxeMacGetCapability()
1859 static int BnxeSetPrivateProperty(um_device_t * pUM, in BnxeSetPrivateProperty() argument
1879 pUM->hwinit.lnkcfg.param_2500fdx = (uint32_t)result; in BnxeSetPrivateProperty()
1880 pUM->curcfg.lnkcfg.param_2500fdx = (uint32_t)result; in BnxeSetPrivateProperty()
1881 if (pUM->plumbed) BnxeUpdatePhy(pUM); in BnxeSetPrivateProperty()
1895 pUM->hwinit.lnkcfg.param_txpause = (uint32_t)result; in BnxeSetPrivateProperty()
1896 pUM->curcfg.lnkcfg.param_txpause = (uint32_t)result; in BnxeSetPrivateProperty()
1897 if (pUM->plumbed) BnxeUpdatePhy(pUM); in BnxeSetPrivateProperty()
1911 pUM->hwinit.lnkcfg.param_rxpause = (uint32_t)result; in BnxeSetPrivateProperty()
1912 pUM->curcfg.lnkcfg.param_rxpause = (uint32_t)result; in BnxeSetPrivateProperty()
1913 if (pUM->plumbed) BnxeUpdatePhy(pUM); in BnxeSetPrivateProperty()
1927 pUM->hwinit.flow_autoneg = (uint32_t)result; in BnxeSetPrivateProperty()
1928 pUM->curcfg.flow_autoneg = (uint32_t)result; in BnxeSetPrivateProperty()
1929 if (pUM->plumbed) BnxeUpdatePhy(pUM); in BnxeSetPrivateProperty()
1933 if (pUM->plumbed) in BnxeSetPrivateProperty()
1947 pUM->devParams.enabled_oflds = LM_OFFLOAD_NONE; in BnxeSetPrivateProperty()
1952 pUM->devParams.enabled_oflds = (LM_OFFLOAD_TX_IP_CKSUM | in BnxeSetPrivateProperty()
1958 pUM->devParams.enabled_oflds = (LM_OFFLOAD_TX_IP_CKSUM | in BnxeSetPrivateProperty()
1971 pUM->devParams.checksum = (uint32_t)result; in BnxeSetPrivateProperty()
1994 pUM->devParams.routeTxRingPolicy = (uint32_t)result; in BnxeSetPrivateProperty()
1998 if (pUM->plumbed) in BnxeSetPrivateProperty()
2014 pUM->devParams.numRings = (uint32_t)result; in BnxeSetPrivateProperty()
2018 if (pUM->plumbed) in BnxeSetPrivateProperty()
2033 pUM->devParams.numRxDesc[LM_CLI_IDX_NDIS] = (uint32_t)result; in BnxeSetPrivateProperty()
2047 pUM->devParams.maxRxFree = (uint32_t)result; in BnxeSetPrivateProperty()
2051 if (pUM->plumbed) in BnxeSetPrivateProperty()
2066 pUM->devParams.numTxDesc[LM_CLI_IDX_NDIS] = (uint32_t)result; in BnxeSetPrivateProperty()
2080 pUM->devParams.maxTxFree = (uint32_t)result; in BnxeSetPrivateProperty()
2089 pUM->devParams.rxCopyThreshold = (uint32_t)result; in BnxeSetPrivateProperty()
2098 pUM->devParams.txCopyThreshold = (uint32_t)result; in BnxeSetPrivateProperty()
2102 if (pUM->plumbed) in BnxeSetPrivateProperty()
2117 pUM->devParams.intrCoalesce = (uint32_t)result; in BnxeSetPrivateProperty()
2121 if (pUM->plumbed) in BnxeSetPrivateProperty()
2137 pUM->devParams.intrRxPerSec = (uint32_t)(1000000 / result); in BnxeSetPrivateProperty()
2141 if (pUM->plumbed) in BnxeSetPrivateProperty()
2157 pUM->devParams.intrTxPerSec = (uint32_t)(1000000 / result); in BnxeSetPrivateProperty()
2161 if (pUM->plumbed) in BnxeSetPrivateProperty()
2176 pUM->devParams.disableMsix = (uint32_t)result; in BnxeSetPrivateProperty()
2180 if (pUM->plumbed) in BnxeSetPrivateProperty()
2195 pUM->devParams.l2_fw_flow_ctrl = (uint32_t)result; in BnxeSetPrivateProperty()
2209 pUM->devParams.autogreeenEnable = (uint32_t)result; in BnxeSetPrivateProperty()
2210 if (pUM->plumbed) BnxeUpdatePhy(pUM); in BnxeSetPrivateProperty()
2214 if (pUM->plumbed) in BnxeSetPrivateProperty()
2229 pUM->devParams.lsoEnable = (uint32_t)result; in BnxeSetPrivateProperty()
2243 pUM->devParams.logEnable = (uint32_t)result; in BnxeSetPrivateProperty()
2257 pUM->devParams.fcoeEnable = (uint32_t)result; in BnxeSetPrivateProperty()
2259 if (BNXE_FCOE(pUM)) in BnxeSetPrivateProperty()
2261 BnxeFcoeStartStop(pUM); in BnxeSetPrivateProperty()
2279 um_device_t * pUM = barg; in BnxeMacSetProperty() local
2287 BNXE_LOCK_ENTER_GLD(pUM); in BnxeMacSetProperty()
2316 pUM->hwinit.lnkcfg.param_10000fdx = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2317 pUM->curcfg.lnkcfg.param_10000fdx = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2323 pUM->hwinit.lnkcfg.param_1000fdx = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2324 pUM->curcfg.lnkcfg.param_1000fdx = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2330 pUM->hwinit.lnkcfg.param_100fdx = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2331 pUM->curcfg.lnkcfg.param_100fdx = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2337 pUM->hwinit.lnkcfg.param_100hdx = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2338 pUM->curcfg.lnkcfg.param_100hdx = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2344 pUM->hwinit.lnkcfg.param_10fdx = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2345 pUM->curcfg.lnkcfg.param_10fdx = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2351 pUM->hwinit.lnkcfg.param_10hdx = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2352 pUM->curcfg.lnkcfg.param_10hdx = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2358 pUM->hwinit.lnkcfg.link_autoneg = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2359 pUM->curcfg.lnkcfg.link_autoneg = *(uint8_t *)pr_val; in BnxeMacSetProperty()
2401 pUM->hwinit.lnkcfg.param_rxpause = rxpause; in BnxeMacSetProperty()
2402 pUM->hwinit.lnkcfg.param_txpause = txpause; in BnxeMacSetProperty()
2403 pUM->curcfg.lnkcfg.param_rxpause = rxpause; in BnxeMacSetProperty()
2404 pUM->curcfg.lnkcfg.param_txpause = txpause; in BnxeMacSetProperty()
2412 if (pUM->plumbed) in BnxeMacSetProperty()
2426 if (pUM->devParams.mtu[LM_CLI_IDX_NDIS] == mtu) in BnxeMacSetProperty()
2431 pUM->devParams.mtu[LM_CLI_IDX_NDIS] = mtu; in BnxeMacSetProperty()
2432 err = mac_maxsdu_update(pUM->pMac, pUM->devParams.mtu[LM_CLI_IDX_NDIS]); in BnxeMacSetProperty()
2433 pUM->lm_dev.params.mtu[LM_CLI_IDX_NDIS] = pUM->devParams.mtu[LM_CLI_IDX_NDIS]; in BnxeMacSetProperty()
2438 err = BnxeSetPrivateProperty(pUM, pr_name, pr_valsize, pr_val); in BnxeMacSetProperty()
2444 if (pUM->plumbed) BnxeUpdatePhy(pUM); in BnxeMacSetProperty()
2447 BNXE_LOCK_EXIT_GLD(pUM); in BnxeMacSetProperty()
2456 static int BnxeGetPrivateProperty(um_device_t * pUM, in BnxeGetPrivateProperty() argument
2461 BnxeLinkCfg * lnk_cfg = &pUM->curcfg.lnkcfg; in BnxeGetPrivateProperty()
2462 BnxeLinkCfg * hw_cfg = &pUM->hwinit.lnkcfg; in BnxeGetPrivateProperty()
2484 value = pUM->props.link_txpause; in BnxeGetPrivateProperty()
2496 value = pUM->props.link_rxpause; in BnxeGetPrivateProperty()
2500 value = pUM->hwinit.flow_autoneg; in BnxeGetPrivateProperty()
2504 value = pUM->devParams.checksum; in BnxeGetPrivateProperty()
2508 value = pUM->devParams.routeTxRingPolicy; in BnxeGetPrivateProperty()
2512 value = pUM->devParams.numRings; in BnxeGetPrivateProperty()
2516 value = pUM->devParams.numRxDesc[LM_CLI_IDX_NDIS]; in BnxeGetPrivateProperty()
2520 value = pUM->devParams.maxRxFree; in BnxeGetPrivateProperty()
2524 value = pUM->devParams.numTxDesc[LM_CLI_IDX_NDIS]; in BnxeGetPrivateProperty()
2528 value = pUM->devParams.maxTxFree; in BnxeGetPrivateProperty()
2532 value = pUM->devParams.rxCopyThreshold; in BnxeGetPrivateProperty()
2536 value = pUM->devParams.txCopyThreshold; in BnxeGetPrivateProperty()
2540 value = pUM->devParams.intrCoalesce; in BnxeGetPrivateProperty()
2544 value = pUM->devParams.intrRxPerSec; in BnxeGetPrivateProperty()
2548 value = pUM->devParams.intrTxPerSec; in BnxeGetPrivateProperty()
2552 value = pUM->devParams.disableMsix; in BnxeGetPrivateProperty()
2556 value = pUM->devParams.l2_fw_flow_ctrl; in BnxeGetPrivateProperty()
2560 value = pUM->devParams.autogreeenEnable; in BnxeGetPrivateProperty()
2564 value = pUM->devParams.lsoEnable; in BnxeGetPrivateProperty()
2568 value = pUM->devParams.logEnable; in BnxeGetPrivateProperty()
2572 value = pUM->devParams.fcoeEnable; in BnxeGetPrivateProperty()
2594 um_device_t * pUM = barg; in BnxeMacGetProperty() local
2600 BnxeLinkCfg * lnk_cfg = &pUM->curcfg.lnkcfg; in BnxeMacGetProperty()
2601 BnxeLinkCfg * hw_cfg = &pUM->hwinit.lnkcfg; in BnxeMacGetProperty()
2609 bcopy(&pUM->devParams.mtu[LM_CLI_IDX_NDIS], pr_val, sizeof(u32_t)); in BnxeMacGetProperty()
2616 link_duplex = pUM->props.link_duplex ? in BnxeMacGetProperty()
2625 link_speed = (pUM->props.link_speed * 1000000ULL); in BnxeMacGetProperty()
2633 link_state = pUM->props.link_speed ? in BnxeMacGetProperty()
2641 link_media = bnxe_phy_to_media(pUM); in BnxeMacGetProperty()
2748 return BnxeGetPrivateProperty(pUM, in BnxeMacGetProperty()
2766 static void BnxeMacPrivatePropertyInfo(um_device_t * pUM, in BnxeMacPrivatePropertyInfo() argument
2847 um_device_t * pUM = barg; in BnxeMacPropertyInfo() local
2941 BnxeMacPrivatePropertyInfo(pUM, pr_name, prh); in BnxeMacPropertyInfo()
2997 boolean_t BnxeGldInit(um_device_t * pUM) in BnxeGldInit() argument
3002 atomic_swap_32(&pUM->plumbed, B_FALSE); in BnxeGldInit()
3006 BnxeLogWarn(pUM, "Failed to allocate GLD MAC memory"); in BnxeGldInit()
3010 pMac->m_driver = pUM; in BnxeGldInit()
3011 pMac->m_dip = pUM->pDev; in BnxeGldInit()
3015 pMac->m_max_sdu = pUM->devParams.mtu[LM_CLI_IDX_NDIS]; in BnxeGldInit()
3016 pMac->m_src_addr = &(pUM->lm_dev.params.mac_addr[0]); in BnxeGldInit()
3028 (!pUM->devParams.numRings) ? BnxeMacUnicast : NULL; in BnxeGldInit()
3033 rc = mac_register(pMac, &pUM->pMac); in BnxeGldInit()
3039 BnxeLogWarn(pUM, "Failed to register with GLD (%d)", rc); in BnxeGldInit()
3044 mac_link_update(pUM->pMac, LINK_STATE_UNKNOWN); in BnxeGldInit()
3050 boolean_t BnxeGldFini(um_device_t * pUM) in BnxeGldFini() argument
3054 if (pUM->plumbed) in BnxeGldFini()
3056 BnxeLogWarn(pUM, "Detaching device from GLD that is started!"); in BnxeGldFini()
3061 if (!BnxeWaitForPacketsFromClient(pUM, LM_CLI_IDX_NDIS)) in BnxeGldFini()
3066 if (pUM->pMac) in BnxeGldFini()
3068 if (mac_unregister(pUM->pMac)) in BnxeGldFini()
3070 BnxeLogWarn(pUM, "Failed to unregister with the GLD"); in BnxeGldFini()
3079 void BnxeGldLink(um_device_t * pUM, in BnxeGldLink() argument
3082 mac_link_update(pUM->pMac, state); in BnxeGldLink()