Lines Matching defs:nxgep

48 void nxge_get_mii(p_nxge_t nxgep, p_mblk_t mp);
49 void nxge_put_mii(p_nxge_t nxgep, p_mblk_t mp);
50 static nxge_status_t nxge_check_xaui_xfp(p_nxge_t nxgep);
61 nxge_global_reset(p_nxge_t nxgep)
65 NXGE_DEBUG_MSG((nxgep, DDI_CTL, "==> nxge_global_reset"));
67 if ((status = nxge_link_monitor(nxgep, LINK_MONITOR_STOP)) != NXGE_OK)
69 (void) nxge_intr_hw_disable(nxgep);
71 if ((nxgep->suspended) ||
72 ((nxgep->statsp->port_stats.lb_mode ==
74 (nxgep->statsp->port_stats.lb_mode ==
76 (nxgep->statsp->port_stats.lb_mode ==
78 (nxgep->statsp->port_stats.lb_mode ==
80 if ((status = nxge_link_init(nxgep)) != NXGE_OK)
84 if ((status = nxge_link_monitor(nxgep, LINK_MONITOR_START)) != NXGE_OK)
86 if ((status = nxge_mac_init(nxgep)) != NXGE_OK)
88 (void) nxge_intr_hw_enable(nxgep);
90 NXGE_DEBUG_MSG((nxgep, DDI_CTL, "<== nxge_global_reset"));
96 nxge_hw_id_init(p_nxge_t nxgep)
98 NXGE_DEBUG_MSG((nxgep, DDI_CTL, "==> nxge_hw_id_init"));
103 nxgep->mac.is_jumbo = B_FALSE;
109 nxgep->mac.minframesize = NXGE_MIN_MAC_FRAMESIZE; /* 64 */
110 nxgep->mac.maxframesize = NXGE_MAX_MAC_FRAMESIZE; /* 1522 */
112 NXGE_DEBUG_MSG((nxgep, DDI_CTL, "<== nxge_hw_id_init: maxframesize %d",
113 nxgep->mac.maxframesize));
114 NXGE_DEBUG_MSG((nxgep, DDI_CTL, "<== nxge_hw_id_init"));
119 nxge_hw_init_niu_common(p_nxge_t nxgep)
123 NXGE_DEBUG_MSG((nxgep, DDI_CTL, "==> nxge_hw_init_niu_common"));
125 if ((hw_p = nxgep->nxge_hw_p) == NULL) {
130 NXGE_DEBUG_MSG((nxgep, MOD_CTL,
133 hw_p->parent_devp, nxgep->function_num));
139 NXGE_DEBUG_MSG((nxgep, MOD_CTL, "nxge_hw_init_niu_common"
141 hw_p->parent_devp, nxgep->function_num));
144 (void) nxge_fflp_hw_reset(nxgep);
146 if (nxgep->niu_hw_type != NIU_HW_TYPE_RF) {
153 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
172 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
184 NXGE_DEBUG_MSG((nxgep, MOD_CTL, "nxge_hw_init_niu_common"
186 hw_p->parent_devp, nxgep->function_num));
187 NXGE_DEBUG_MSG((nxgep, DDI_CTL, "<== nxge_hw_init_niu_common"));
195 p_nxge_t nxgep = (p_nxge_t)arg2;
207 if (arg2 == NULL || (void *) ldvp->nxgep != arg2) {
208 nxgep = ldvp->nxgep;
210 NXGE_DEBUG_MSG((nxgep, INT_CTL, "==> nxge_intr"));
212 if (!(nxgep->drv_state & STATE_HW_INITIALIZED)) {
213 NXGE_ERROR_MSG((nxgep, INT_CTL,
218 ldgvp = nxgep->ldgvp;
219 NXGE_DEBUG_MSG((nxgep, INT_CTL, "==> nxge_intr: ldgvp $%p", ldgvp));
226 NXGE_DEBUG_MSG((nxgep, INT_CTL, "==> nxge_intr: "
229 NXGE_ERROR_MSG((nxgep, INT_CTL, "==> nxge_intr: "
231 NXGE_ERROR_MSG((nxgep, INT_CTL, "<== nxge_intr: not ready"));
239 handle = NXGE_DEV_NPI_HANDLE(nxgep);
245 NXGE_DEBUG_MSG((nxgep, INT_CTL, "==> nxge_intr: #ldvs %d #intrs %d",
250 NXGE_DEBUG_MSG((nxgep, INT_CTL, "==> nxge_intr(%d): #ldvs %d "
259 NXGE_DEBUG_MSG((nxgep, INT_CTL, "==> nxge_intr: "
263 NXGE_DEBUG_MSG((nxgep, INT_CTL, "==> nxge_intr: "
280 NXGE_DEBUG_MSG((nxgep, INT_CTL,
291 NXGE_DEBUG_MSG((nxgep, INT_CTL, "==> nxge_intr: arm "
297 NXGE_DEBUG_MSG((nxgep, INT_CTL, "<== nxge_intr: serviced 0x%x",
323 nxge_check_xaui_xfp(p_nxge_t nxgep)
331 NXGE_DEBUG_MSG((nxgep, INT_CTL, "==> nxge_check_xaui_xfp"));
333 portn = nxgep->mac.portnum;
334 phy_port_addr = nxgep->statsp->mac_stats.xcvr_portn;
341 if ((status = nxge_mdio_read(nxgep, phy_port_addr,
344 status = nxge_mdio_read(nxgep, phy_port_addr,
350 NXGE_FM_REPORT_ERROR(nxgep, portn, NULL,
352 if (DDI_FM_EREPORT_CAP(nxgep->fm_capabilities)) {
353 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
364 } else if (nxgep->mac.portmode == PORT_10G_FIBER) {
374 NXGE_FM_REPORT_ERROR(nxgep, portn, NULL,
376 if (DDI_FM_EREPORT_CAP(nxgep->fm_capabilities)) {
377 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
385 NXGE_DEBUG_MSG((nxgep, INT_CTL, "<== nxge_check_xaui_xfp"));
395 p_nxge_t nxgep = (p_nxge_t)arg2;
404 if (arg2 == NULL || ((ldvp != NULL && (void *) ldvp->nxgep != arg2))) {
406 nxgep = ldvp->nxgep;
409 NXGE_DEBUG_MSG((nxgep, SYSERR_CTL,
410 "==> nxge_syserr_intr: arg2 $%p arg1 $%p", nxgep, ldvp));
414 NXGE_ERROR_MSG((nxgep, SYSERR_CTL,
416 "arg2 $%p arg1 $%p", nxgep, ldvp));
425 handle = NXGE_DEV_NPI_HANDLE(nxgep);
428 NXGE_DEBUG_MSG((nxgep, SYSERR_CTL,
433 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
436 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
445 NXGE_DEBUG_MSG((nxgep, NXGE_ERR_CTL,
447 (void) nxge_ipp_handle_sys_errors(nxgep);
450 NXGE_DEBUG_MSG((nxgep, NXGE_ERR_CTL,
452 (void) nxge_zcp_handle_sys_errors(nxgep);
455 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
463 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
465 (void) nxge_rxdma_handle_sys_errors(nxgep);
467 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
469 (void) nxge_txc_handle_sys_errors(nxgep);
470 } else if ((nxgep->niu_type != N2_NIU) && estat.bits.ldw.peu) {
472 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
476 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
480 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
484 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
486 (void) nxge_fflp_handle_sys_errors(nxgep);
493 if (nxgep->mac.portmode == PORT_10G_FIBER ||
494 nxgep->mac.portmode == PORT_10G_COPPER ||
495 nxgep->mac.portmode == PORT_10G_TN1010 ||
496 nxgep->mac.portmode == PORT_1G_TN1010) {
497 if (nxge_check_xaui_xfp(nxgep) != NXGE_OK) {
498 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
510 NXGE_DEBUG_MSG((nxgep, SYSERR_CTL, "<== nxge_syserr_intr"));
516 nxge_intr_hw_enable(p_nxge_t nxgep)
518 NXGE_DEBUG_MSG((nxgep, INT_CTL, "==> nxge_intr_hw_enable"));
519 (void) nxge_intr_mask_mgmt_set(nxgep, B_TRUE);
520 NXGE_DEBUG_MSG((nxgep, INT_CTL, "<== nxge_intr_hw_enable"));
525 nxge_intr_hw_disable(p_nxge_t nxgep)
527 NXGE_DEBUG_MSG((nxgep, INT_CTL, "==> nxge_intr_hw_disable"));
528 (void) nxge_intr_mask_mgmt_set(nxgep, B_FALSE);
529 NXGE_DEBUG_MSG((nxgep, INT_CTL, "<== nxge_intr_hw_disable"));
536 p_nxge_t nxgep = (p_nxge_t)arg;
543 NXGE_DEBUG_MSG((nxgep, INT_CTL, "==> nxge_rx_hw_blank"));
544 handle = NXGE_DEV_NPI_HANDLE(nxgep);
546 if ((ldgvp = nxgep->ldgvp) == NULL) {
547 NXGE_ERROR_MSG((nxgep, INT_CTL,
551 ldvp = nxgep->ldgvp->ldvp;
565 NXGE_DEBUG_MSG((nxgep, INT_CTL, "<== nxge_rx_hw_blank"));
570 nxge_hw_stop(p_nxge_t nxgep)
572 NXGE_DEBUG_MSG((nxgep, DDI_CTL, "==> nxge_hw_stop"));
574 (void) nxge_tx_mac_disable(nxgep);
575 (void) nxge_rx_mac_disable(nxgep);
576 (void) nxge_txdma_hw_mode(nxgep, NXGE_DMA_STOP);
577 (void) nxge_rxdma_hw_mode(nxgep, NXGE_DMA_STOP);
579 NXGE_DEBUG_MSG((nxgep, DDI_CTL, "<== nxge_hw_stop"));
584 nxge_hw_ioctl(p_nxge_t nxgep, queue_t *wq, mblk_t *mp, struct iocblk *iocp)
588 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "==> nxge_hw_ioctl"));
590 if (nxgep == NULL) {
603 nxge_get_mii(nxgep, mp->b_cont);
608 nxge_put_mii(nxgep, mp->b_cont);
613 nxge_get64(nxgep, mp->b_cont);
618 nxge_put64(nxgep, mp->b_cont);
623 nxge_put_tcam(nxgep, mp->b_cont);
628 nxge_get_tcam(nxgep, mp->b_cont);
633 nxge_txdma_regs_dump_channels(nxgep);
637 nxge_rxdma_regs_dump_channels(nxgep);
642 nxge_virint_regs_dump(nxgep);
646 nxge_rtrace_ioctl(nxgep, wq, mp, iocp);
653 nxge_loopback_ioctl(p_nxge_t nxgep, queue_t *wq, mblk_t *mp,
666 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "NXGE_GET_LB_MODE command"));
667 if (nxgep != NULL) {
669 nxgep->statsp->port_stats.lb_mode;
676 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "NXGE_SET_LB_MODE command"));
681 if ((nxgep != NULL) && nxge_set_lb(nxgep, wq, mp->b_cont)) {
688 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "LB_GET_INFO_SIZE command"));
689 if (nxgep != NULL) {
691 if (nxgep->statsp->mac_stats.cap_10gfdx) {
693 if (nxgep->mac.portmode != PORT_1G_TN1010 &&
694 nxgep->mac.portmode != PORT_10G_TN1010) {
699 if (nxgep->mac.portmode == PORT_10G_COPPER ||
700 nxgep->mac.portmode == PORT_10G_TN1010 ||
701 nxgep->mac.portmode == PORT_10G_FIBER)
710 if (nxgep->mac.portmode == PORT_10G_FIBER ||
711 nxgep->mac.portmode == PORT_10G_COPPER ||
712 nxgep->mac.portmode == PORT_10G_TN1010 ||
713 nxgep->mac.portmode == PORT_10G_SERDES)
716 if (nxgep->statsp->mac_stats.cap_1000fdx) {
718 if (nxgep->mac.portmode != PORT_1G_TN1010 &&
719 nxgep->mac.portmode != PORT_10G_TN1010) {
723 if (nxgep->mac.portmode == PORT_1G_COPPER ||
724 nxgep->mac.portmode == PORT_1G_TN1010 ||
725 nxgep->mac.portmode ==
729 if (nxgep->statsp->mac_stats.cap_100fdx)
731 if (nxgep->statsp->mac_stats.cap_10fdx)
733 if (nxgep->mac.portmode == PORT_1G_FIBER ||
734 nxgep->mac.portmode == PORT_1G_TN1010 ||
735 nxgep->mac.portmode == PORT_1G_SERDES)
740 NXGE_DEBUG_MSG((nxgep, IOC_CTL,
748 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "NXGE_GET_LB_INFO command"));
749 if (nxgep != NULL) {
751 if (nxgep->statsp->mac_stats.cap_10gfdx) {
753 if (nxgep->mac.portmode != PORT_1G_TN1010 &&
754 nxgep->mac.portmode != PORT_10G_TN1010) {
759 if (nxgep->mac.portmode == PORT_10G_COPPER ||
760 nxgep->mac.portmode == PORT_10G_TN1010 ||
761 nxgep->mac.portmode == PORT_10G_FIBER)
764 if (nxgep->mac.portmode == PORT_10G_FIBER ||
765 nxgep->mac.portmode == PORT_10G_COPPER ||
766 nxgep->mac.portmode == PORT_10G_TN1010 ||
767 nxgep->mac.portmode == PORT_10G_SERDES)
770 if (nxgep->statsp->mac_stats.cap_1000fdx) {
772 if (nxgep->mac.portmode != PORT_1G_TN1010 &&
773 nxgep->mac.portmode != PORT_10G_TN1010) {
777 if (nxgep->mac.portmode == PORT_1G_COPPER ||
778 nxgep->mac.portmode == PORT_1G_TN1010 ||
779 nxgep->mac.portmode ==
783 if (nxgep->statsp->mac_stats.cap_100fdx)
786 if (nxgep->statsp->mac_stats.cap_10fdx)
789 if (nxgep->mac.portmode == PORT_1G_FIBER ||
790 nxgep->mac.portmode == PORT_1G_TN1010 ||
791 nxgep->mac.portmode == PORT_1G_SERDES)
794 NXGE_DEBUG_MSG((nxgep, IOC_CTL,
801 if (nxgep->statsp->mac_stats.cap_10gfdx) {
803 if (nxgep->mac.portmode ==
805 nxgep->mac.portmode ==
807 nxgep->mac.portmode ==
812 if (nxgep->mac.portmode !=
814 nxgep->mac.portmode !=
820 if (nxgep->mac.portmode == PORT_10G_FIBER ||
821 nxgep->mac.portmode == PORT_10G_COPPER ||
822 nxgep->mac.portmode == PORT_10G_TN1010 ||
823 nxgep->mac.portmode == PORT_10G_SERDES)
826 if (nxgep->statsp->mac_stats.cap_1000fdx) {
828 if (nxgep->mac.portmode !=
830 nxgep->mac.portmode !=
836 if (nxgep->statsp->mac_stats.cap_100fdx)
839 if (nxgep->statsp->mac_stats.cap_10fdx)
842 if (nxgep->statsp->mac_stats.cap_1000fdx)
845 if (nxgep->mac.portmode == PORT_1G_COPPER ||
846 nxgep->mac.portmode == PORT_1G_TN1010 ||
847 nxgep->mac.portmode ==
849 if (nxgep->statsp->mac_stats.
852 } else if (nxgep->mac.portmode ==
854 nxgep->mac.portmode == PORT_1G_TN1010 ||
855 nxgep->mac.portmode == PORT_1G_SERDES) {
919 nxge_get32(p_nxge_t nxgep, p_mblk_t mp)
923 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "nxge_get32"));
924 nxge_regh = nxgep->dev_regs->nxge_regh;
927 nxgep->dev_regs->nxge_regp, *(uint32_t *)mp->b_rptr);
929 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "value = 0x%08X",
931 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "nxge_get32"));
936 nxge_put32(p_nxge_t nxgep, p_mblk_t mp)
942 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "nxge_put32"));
943 nxge_regh = nxgep->dev_regs->nxge_regh;
946 reg = (uint8_t *)(nxgep->dev_regs->nxge_regp) + buf[0];
947 NXGE_DEBUG_MSG((nxgep, IOC_CTL,
951 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "nxge_put32"));
956 nxge_set_lb(p_nxge_t nxgep, queue_t *wq, p_mblk_t mp)
962 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "<== nxge_set_lb"));
963 lb_mode = nxgep->statsp->port_stats.lb_mode;
967 nxgep->instance, lb_mode);
976 (nxgep->statsp->mac_stats.cap_10gfdx))
979 (nxgep->statsp->mac_stats.cap_1000fdx))
982 (nxgep->statsp->mac_stats.cap_100fdx))
985 (nxgep->statsp->mac_stats.cap_10fdx))
988 (nxgep->mac.portmode == PORT_10G_COPPER ||
989 nxgep->mac.portmode == PORT_10G_TN1010 ||
990 nxgep->mac.portmode == PORT_10G_FIBER))
993 (nxgep->mac.portmode == PORT_1G_COPPER ||
994 nxgep->mac.portmode == PORT_1G_TN1010 ||
995 nxgep->mac.portmode == PORT_1G_RGMII_FIBER))
998 (nxgep->mac.portmode == PORT_1G_COPPER))
1001 (nxgep->mac.portmode == PORT_10G_FIBER ||
1002 nxgep->mac.portmode == PORT_10G_COPPER ||
1003 nxgep->mac.portmode == PORT_10G_TN1010 ||
1004 nxgep->mac.portmode == PORT_10G_SERDES))
1007 (nxgep->mac.portmode == PORT_1G_FIBER ||
1008 nxgep->mac.portmode == PORT_1G_TN1010 ||
1009 nxgep->mac.portmode == PORT_1G_SERDES))
1020 nxgep->instance, lb_mode);
1029 nxgep->instance);
1031 if (nxge_set_lb_normal(nxgep) != NXGE_OK) {
1035 nxgep->instance);
1039 nxgep->statsp->port_stats.lb_mode = lb_mode;
1044 nxgep->instance, lb_info->key);
1045 nxgep->param_arr[param_autoneg].value = 0;
1046 nxgep->param_arr[param_anar_10gfdx].value =
1047 (nxgep->statsp->port_stats.lb_mode == nxge_lb_ext10g) ||
1048 (nxgep->statsp->port_stats.lb_mode == nxge_lb_mac10g) ||
1049 (nxgep->statsp->port_stats.lb_mode == nxge_lb_phy10g) ||
1050 (nxgep->statsp->port_stats.lb_mode == nxge_lb_serdes10g);
1051 nxgep->param_arr[param_anar_10ghdx].value = 0;
1052 nxgep->param_arr[param_anar_1000fdx].value =
1053 (nxgep->statsp->port_stats.lb_mode == nxge_lb_ext1000) ||
1054 (nxgep->statsp->port_stats.lb_mode == nxge_lb_mac1000) ||
1055 (nxgep->statsp->port_stats.lb_mode == nxge_lb_phy1000) ||
1056 (nxgep->statsp->port_stats.lb_mode == nxge_lb_serdes1000);
1057 nxgep->param_arr[param_anar_1000hdx].value = 0;
1058 nxgep->param_arr[param_anar_100fdx].value =
1059 (nxgep->statsp->port_stats.lb_mode == nxge_lb_phy) ||
1060 (nxgep->statsp->port_stats.lb_mode == nxge_lb_mac) ||
1061 (nxgep->statsp->port_stats.lb_mode == nxge_lb_ext100);
1062 nxgep->param_arr[param_anar_100hdx].value = 0;
1063 nxgep->param_arr[param_anar_10fdx].value =
1064 (nxgep->statsp->port_stats.lb_mode == nxge_lb_mac) ||
1065 (nxgep->statsp->port_stats.lb_mode == nxge_lb_ext10);
1066 if (nxgep->statsp->port_stats.lb_mode == nxge_lb_ext1000) {
1067 nxgep->param_arr[param_master_cfg_enable].value = 1;
1068 nxgep->param_arr[param_master_cfg_value].value = 1;
1070 if ((nxgep->statsp->port_stats.lb_mode == nxge_lb_ext10g) ||
1071 (nxgep->statsp->port_stats.lb_mode == nxge_lb_ext1000) ||
1072 (nxgep->statsp->port_stats.lb_mode == nxge_lb_ext100) ||
1073 (nxgep->statsp->port_stats.lb_mode == nxge_lb_ext10) ||
1074 (nxgep->statsp->port_stats.lb_mode == nxge_lb_phy10g) ||
1075 (nxgep->statsp->port_stats.lb_mode == nxge_lb_phy1000) ||
1076 (nxgep->statsp->port_stats.lb_mode == nxge_lb_phy)) {
1078 if (nxge_link_monitor(nxgep, LINK_MONITOR_STOP) != NXGE_OK)
1080 if (nxge_xcvr_find(nxgep) != NXGE_OK)
1082 if (nxge_link_init(nxgep) != NXGE_OK)
1084 if (nxge_link_monitor(nxgep, LINK_MONITOR_START) != NXGE_OK)
1088 if ((nxgep->statsp->port_stats.lb_mode == nxge_lb_mac10g) ||
1089 (nxgep->statsp->port_stats.lb_mode ==
1091 (nxgep->statsp->port_stats.lb_mode ==
1093 nxgep->statsp->mac_stats.link_speed = 10000;
1094 } else if ((nxgep->statsp->port_stats.lb_mode
1096 (nxgep->statsp->port_stats.lb_mode ==
1098 (nxgep->statsp->port_stats.lb_mode ==
1100 nxgep->statsp->mac_stats.link_speed = 1000;
1102 nxgep->statsp->mac_stats.link_speed = 100;
1104 nxgep->statsp->mac_stats.link_duplex = 2;
1105 nxgep->statsp->mac_stats.link_up = 1;
1107 if (nxge_global_reset(nxgep) != NXGE_OK)
1111 NXGE_DEBUG_MSG((nxgep, DDI_CTL,
1118 nxgep->instance, lb_info->key);
1125 nxge_set_lb_normal(p_nxge_t nxgep)
1129 NXGE_DEBUG_MSG((nxgep, DDI_CTL, "==> nxge_set_lb_normal"));
1131 nxgep->statsp->port_stats.lb_mode = nxge_lb_normal;
1132 nxgep->param_arr[param_autoneg].value =
1133 nxgep->param_arr[param_autoneg].old_value;
1134 nxgep->param_arr[param_anar_1000fdx].value =
1135 nxgep->param_arr[param_anar_1000fdx].old_value;
1136 nxgep->param_arr[param_anar_1000hdx].value =
1137 nxgep->param_arr[param_anar_1000hdx].old_value;
1138 nxgep->param_arr[param_anar_100fdx].value =
1139 nxgep->param_arr[param_anar_100fdx].old_value;
1140 nxgep->param_arr[param_anar_100hdx].value =
1141 nxgep->param_arr[param_anar_100hdx].old_value;
1142 nxgep->param_arr[param_anar_10fdx].value =
1143 nxgep->param_arr[param_anar_10fdx].old_value;
1144 nxgep->param_arr[param_master_cfg_enable].value =
1145 nxgep->param_arr[param_master_cfg_enable].old_value;
1146 nxgep->param_arr[param_master_cfg_value].value =
1147 nxgep->param_arr[param_master_cfg_value].old_value;
1149 if ((status = nxge_global_reset(nxgep)) != NXGE_OK)
1152 if ((status = nxge_link_monitor(nxgep, LINK_MONITOR_STOP)) != NXGE_OK)
1154 if ((status = nxge_xcvr_find(nxgep)) != NXGE_OK)
1156 if ((status = nxge_link_init(nxgep)) != NXGE_OK)
1158 status = nxge_link_monitor(nxgep, LINK_MONITOR_START);
1160 NXGE_DEBUG_MSG((nxgep, DDI_CTL, "<== nxge_set_lb_normal"));
1167 nxge_get_mii(p_nxge_t nxgep, p_mblk_t mp)
1171 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "==> nxge_get_mii"));
1174 (void) nxge_mii_read(nxgep, nxgep->statsp->mac_stats.xcvr_portn, reg,
1176 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "reg = 0x%08X value = 0x%04X",
1178 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "<== nxge_get_mii"));
1183 nxge_put_mii(p_nxge_t nxgep, p_mblk_t mp)
1188 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "==> nxge_put_mii"));
1191 NXGE_DEBUG_MSG((nxgep, IOC_CTL,
1194 (void) nxge_mii_write(nxgep, nxgep->statsp->mac_stats.xcvr_portn,
1196 NXGE_DEBUG_MSG((nxgep, IOC_CTL, "<== nxge_put_mii"));
1201 nxge_check_hw_state(p_nxge_t nxgep)
1206 NXGE_DEBUG_MSG((nxgep, SYSERR_CTL, "==> nxge_check_hw_state"));
1208 MUTEX_ENTER(nxgep->genlock);
1209 nxgep->nxge_timerid = 0;
1210 if (!(nxgep->drv_state & STATE_HW_INITIALIZED)) {
1213 nxge_check_tx_hang(nxgep);
1215 ldgvp = nxgep->ldgvp;
1217 NXGE_ERROR_MSG((nxgep, SYSERR_CTL, "<== nxge_check_hw_state: "
1223 NXGE_DEBUG_MSG((nxgep, SYSERR_CTL, "<== nxge_check_hw_state: "
1228 if (fm_check_acc_handle(nxgep->dev_regs->nxge_regh) != DDI_FM_OK) {
1229 NXGE_ERROR_MSG((nxgep, NXGE_ERR_CTL,
1230 "port%d Bad register acc handle", nxgep->mac.portnum));
1232 (void) nxge_syserr_intr((void *) t_ldvp, (void *) nxgep);
1234 nxgep->nxge_timerid = nxge_start_timer(nxgep, nxge_check_hw_state,
1238 MUTEX_EXIT(nxgep->genlock);
1239 NXGE_DEBUG_MSG((nxgep, SYSERR_CTL, "<== nxge_check_hw_state"));
1244 nxge_rtrace_ioctl(p_nxge_t nxgep, queue_t *wq, mblk_t *mp,
1255 NXGE_DEBUG_MSG((nxgep, STR_CTL, "==> nxge_rtrace_ioctl"));
1259 NXGE_DEBUG_MSG((nxgep, STR_CTL,
1271 NXGE_DEBUG_MSG((nxgep, STR_CTL, "start_blk = %d\n", start_blk));
1272 NXGE_DEBUG_MSG((nxgep, STR_CTL, "num_entries = %d\n", num_entries));
1273 NXGE_DEBUG_MSG((nxgep, STR_CTL, "base_entry = %d\n", base_entry));
1285 NXGE_DEBUG_MSG((nxgep, STR_CTL, "<== nxge_rtrace_ioctl"));