Lines Matching defs:bgep

197 	bge_t *bgep;
206 bgep = ksp->ks_private;
207 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
208 bstp = DMA_VPTR(bgep->statistics);
220 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
224 pstats = bgep->pstats;
310 bge_t *bgep;
317 bgep = ksp->ks_private;
320 (knp++)->value.ui64 = bgep->chipid.asic_rev;
321 (knp++)->value.ui64 = bgep->chipid.businfo;
322 (knp++)->value.ui64 = bgep->chipid.command;
324 (knp++)->value.ui64 = bgep->chipid.vendor;
325 (knp++)->value.ui64 = bgep->chipid.device;
326 (knp++)->value.ui64 = bgep->chipid.subven;
327 (knp++)->value.ui64 = bgep->chipid.subdev;
328 (knp++)->value.ui64 = bgep->chipid.revision;
329 (knp++)->value.ui64 = bgep->chipid.clsize;
330 (knp++)->value.ui64 = bgep->chipid.latency;
332 (knp++)->value.ui64 = bgep->chipid.flags;
333 (knp++)->value.ui64 = bgep->chipid.chip_label;
334 (knp++)->value.ui64 = bgep->chipid.mbuf_base;
335 (knp++)->value.ui64 = bgep->chipid.mbuf_length;
336 (knp++)->value.ui64 = bgep->chipid.hw_mac_addr;
341 tmp = bgep->chipid.businfo;
349 tmp = bgep->chipid.flags;
356 ((bgep->chipid.nvtype == BGE_NVTYPE_NONE) ||
357 (bgep->chipid.nvtype == BGE_NVTYPE_UNKNOWN)) ?
358 0 : bgep->chipid.nvtype;
360 (knp++)->value.ui64 = bgep->chipid.asic_rev_prod_id;
404 bge_t *bgep;
411 bgep = ksp->ks_private;
412 if (bgep->bge_chip_state == BGE_CHIP_FAULT)
417 (knp++)->value.ui64 = bgep->rx_buff[0].cookie.dmac_laddress;
418 (knp++)->value.ui64 = bgep->tx_buff[0].cookie.dmac_laddress;
419 (knp++)->value.ui64 = bgep->rx_desc[0].cookie.dmac_laddress;
420 (knp++)->value.ui64 = bgep->tx_desc.cookie.dmac_laddress;
422 (knp++)->value.ui64 = bgep->send[0].tx_free;
423 (knp++)->value.ui64 = bgep->send[0].tx_array;
424 (knp++)->value.ui64 = bgep->send[0].tc_next;
425 (knp++)->value.ui64 = bgep->send[0].tx_next;
426 (knp++)->value.ui64 = bgep->send[0].txfill_next;
427 (knp++)->value.ui64 = bgep->send[0].txpkt_next;
428 (knp++)->value.ui64 = bgep->send[0].txbuf_pop_queue->count +
429 bgep->send[0].txbuf_push_queue->count;
430 (knp++)->value.ui64 = bgep->send[0].tx_flow;
431 (knp++)->value.ui64 = bgep->tx_resched_needed;
432 (knp++)->value.ui64 = bgep->tx_resched;
433 (knp++)->value.ui64 = bgep->send[0].tx_nobuf;
434 (knp++)->value.ui64 = bgep->send[0].tx_nobd;
435 (knp++)->value.ui64 = bgep->send[0].tx_block;
436 (knp++)->value.ui64 = bgep->send[0].tx_alloc_fail;
438 (knp++)->value.ui64 = bgep->watchdog;
439 (knp++)->value.ui64 = bgep->chip_resets;
440 (knp++)->value.ui64 = bgep->missed_dmas;
441 (knp++)->value.ui64 = bgep->missed_updates;
447 handle = bgep->cfg_handle;
448 mutex_enter(bgep->genlock);
452 if (bge_check_acc_handle(bgep, bgep->cfg_handle) != DDI_FM_OK) {
453 ddi_fm_service_impact(bgep->devinfo, DDI_SERVICE_DEGRADED);
454 mutex_exit(bgep->genlock);
458 (knp++)->value.ui64 = bge_reg_get32(bgep, BUFFER_MANAGER_STATUS_REG);
459 (knp++)->value.ui64 = bge_reg_get32(bgep, RCV_INITIATOR_STATUS_REG);
460 if (bge_check_acc_handle(bgep, bgep->io_handle) != DDI_FM_OK) {
461 ddi_fm_service_impact(bgep->devinfo, DDI_SERVICE_DEGRADED);
462 mutex_exit(bgep->genlock);
465 mutex_exit(bgep->genlock);
481 bge_t *bgep;
487 bgep = ksp->ks_private;
490 (knp++)->value.ui64 = bgep->serdes_status;
491 (knp++)->value.ui64 = bgep->serdes_advert;
492 (knp++)->value.ui64 = bgep->serdes_lpadv;
526 bge_t *bgep;
533 bgep = ksp->ks_private;
534 if (bgep->bge_chip_state == BGE_CHIP_FAULT)
548 mutex_enter(bgep->genlock);
551 knp->value.ui64 = bgep->phy_gen_status;
555 knp->value.ui64 = bge_mii_get16(bgep, MII_PHYIDH);
557 knp->value.ui64 |= bge_mii_get16(bgep, MII_PHYIDL);
562 if (bgep->link_state == LINK_STATE_UP)
565 (bge_reg_get32(bgep, EEE_MODE_REG) & 0x80) ?
571 knp->value.ui64 = bge_mii_get16(bgep, ksip->index);
574 if (bge_check_acc_handle(bgep, bgep->io_handle) != DDI_FM_OK) {
575 ddi_fm_service_impact(bgep->devinfo,
577 mutex_exit(bgep->genlock);
580 mutex_exit(bgep->genlock);
587 bge_setup_named_kstat(bge_t *bgep, int instance, char *name,
601 ksp->ks_private = bgep;
629 bge_init_kstats(bge_t *bgep, int instance)
633 BGE_TRACE(("bge_init_kstats($%p, %d)", (void *)bgep, instance));
635 if (bgep->chipid.statistic_type == BGE_STAT_BLK) {
636 DMA_ZERO(bgep->statistics);
637 bgep->bge_kstats[BGE_KSTAT_RAW] = ksp =
642 ksp->ks_data = DMA_VPTR(bgep->statistics);
646 bgep->bge_kstats[BGE_KSTAT_STATS] = bge_setup_named_kstat(bgep,
650 bgep->bge_kstats[BGE_KSTAT_STATS] = bge_setup_named_kstat(bgep,
655 bgep->bge_kstats[BGE_KSTAT_CHIPID] = bge_setup_named_kstat(bgep,
659 bgep->bge_kstats[BGE_KSTAT_DRIVER] = bge_setup_named_kstat(bgep,
663 if (bgep->chipid.flags & CHIP_FLAG_SERDES)
664 bgep->bge_kstats[BGE_KSTAT_PHYS] = bge_setup_named_kstat(bgep,
668 bgep->bge_kstats[BGE_KSTAT_PHYS] = bge_setup_named_kstat(bgep,
675 bge_fini_kstats(bge_t *bgep)
679 BGE_TRACE(("bge_fini_kstats($%p)", (void *)bgep));
682 if (bgep->bge_kstats[i] != NULL)
683 kstat_delete(bgep->bge_kstats[i]);
689 bge_t *bgep = arg;
693 if (bgep->bge_chip_state != BGE_CHIP_RUNNING) {
697 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
698 bstp = DMA_VPTR(bgep->statistics);
700 pstats = bgep->pstats;
702 bge_reg_get32(bgep, STAT_IFHCOUT_OCTETS_REG);
704 bge_reg_get32(bgep, STAT_ETHER_COLLIS_REG);
706 bge_reg_get32(bgep, STAT_OUTXON_SENT_REG);
708 bge_reg_get32(bgep, STAT_OUTXOFF_SENT_REG);
710 bge_reg_get32(bgep, STAT_DOT3_INTMACTX_ERR_REG);
712 bge_reg_get32(bgep, STAT_DOT3_SCOLLI_FRAME_REG);
714 bge_reg_get32(bgep, STAT_DOT3_MCOLLI_FRAME_REG);
716 bge_reg_get32(bgep, STAT_DOT3_DEFERED_TX_REG);
718 bge_reg_get32(bgep, STAT_DOT3_EXCE_COLLI_REG);
720 bge_reg_get32(bgep, STAT_DOT3_LATE_COLLI_REG);
722 bge_reg_get32(bgep, STAT_IFHCOUT_UPKGS_REG);
724 bge_reg_get32(bgep, STAT_IFHCOUT_MPKGS_REG);
726 bge_reg_get32(bgep, STAT_IFHCOUT_BPKGS_REG);
728 bge_reg_get32(bgep, STAT_IFHCIN_OCTETS_REG);
730 bge_reg_get32(bgep, STAT_ETHER_FRAGMENT_REG);
732 bge_reg_get32(bgep, STAT_IFHCIN_UPKGS_REG);
734 bge_reg_get32(bgep, STAT_IFHCIN_MPKGS_REG);
736 bge_reg_get32(bgep, STAT_IFHCIN_BPKGS_REG);
738 bge_reg_get32(bgep, STAT_DOT3_FCS_ERR_REG);
740 bge_reg_get32(bgep, STAT_DOT3_ALIGN_ERR_REG);
742 bge_reg_get32(bgep, STAT_XON_PAUSE_RX_REG);
744 bge_reg_get32(bgep, STAT_XOFF_PAUSE_RX_REG);
746 bge_reg_get32(bgep, STAT_MAC_CTRL_RX_REG);
748 bge_reg_get32(bgep, STAT_XOFF_STATE_ENTER_REG);
750 bge_reg_get32(bgep, STAT_DOT3_FRAME_TOOLONG_REG);
752 bge_reg_get32(bgep, STAT_ETHER_JABBERS_REG);
754 bge_reg_get32(bgep, STAT_ETHER_UNDERSIZE_REG);
755 mutex_enter(bgep->genlock);
756 if (bge_check_acc_handle(bgep, bgep->io_handle) != DDI_FM_OK) {
757 ddi_fm_service_impact(bgep->devinfo,
760 mutex_exit(bgep->genlock);
765 *val = (bgep->link_state != LINK_STATE_UNKNOWN) ?
766 (bgep->param_link_speed * 1000000ull) : 0;
770 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
777 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
784 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
791 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
798 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
805 if (bgep->chipid.statistic_type == BGE_STAT_BLK) {
821 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
828 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
835 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
842 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
849 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
860 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
867 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
878 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
885 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
892 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
899 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
906 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
913 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
920 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
927 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
930 *val = bgep->pstats->dot3StatsInternalMacTransmitErrors;
934 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
941 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
949 if (bgep->chipid.statistic_type == BGE_STAT_BLK)
957 *val = bgep->phy_mii_addr;
961 mutex_enter(bgep->genlock);
962 *val = bge_mii_get16(bgep, MII_PHYIDH);
964 *val |= bge_mii_get16(bgep, MII_PHYIDL);
965 if (bge_check_acc_handle(bgep, bgep->io_handle) != DDI_FM_OK) {
966 ddi_fm_service_impact(bgep->devinfo,
969 mutex_exit(bgep->genlock);
973 if (bgep->chipid.flags & CHIP_FLAG_SERDES)
988 if (bgep->chipid.flags & CHIP_FLAG_SERDES)
995 if (bgep->chipid.flags & CHIP_FLAG_SERDES)
1002 if (bgep->chipid.flags & CHIP_FLAG_SERDES)
1009 if (bgep->chipid.flags & CHIP_FLAG_SERDES)
1034 *val = bgep->param_adv_1000fdx;
1038 *val = bgep->param_adv_1000hdx;
1042 *val = bgep->param_adv_100fdx;
1046 *val = bgep->param_adv_100hdx;
1050 *val = bgep->param_adv_10fdx;
1054 *val = bgep->param_adv_10hdx;
1058 *val = bgep->param_adv_asym_pause;
1062 *val = bgep->param_adv_pause;
1066 *val = bgep->param_adv_autoneg;
1071 if (bgep->chipid.flags & CHIP_FLAG_SERDES)
1074 mutex_enter(bgep->genlock);
1075 *val = bge_mii_get16(bgep, MII_AN_ADVERT) &
1077 if (bge_check_acc_handle(bgep, bgep->io_handle) !=
1079 ddi_fm_service_impact(bgep->devinfo,
1082 mutex_exit(bgep->genlock);
1088 *val = bgep->param_lp_1000fdx;
1092 *val = bgep->param_lp_1000hdx;
1096 *val = bgep->param_lp_100fdx;
1100 *val = bgep->param_lp_100hdx;
1104 *val = bgep->param_lp_10fdx;
1108 *val = bgep->param_lp_10hdx;
1112 *val = bgep->param_lp_asym_pause;
1116 *val = bgep->param_lp_pause;
1120 *val = bgep->param_lp_autoneg;
1125 if (bgep->chipid.flags & CHIP_FLAG_SERDES)
1128 mutex_enter(bgep->genlock);
1129 *val = bge_mii_get16(bgep, MII_AN_LPABLE) &
1131 if (bge_check_acc_handle(bgep, bgep->io_handle) !=
1133 ddi_fm_service_impact(bgep->devinfo,
1136 mutex_exit(bgep->genlock);
1142 *val = bgep->param_adv_asym_pause &&
1143 bgep->param_lp_asym_pause &&
1144 bgep->param_adv_pause != bgep->param_lp_pause;
1148 *val = bgep->param_link_rx_pause;
1152 *val = bgep->param_link_autoneg;
1156 *val = (bgep->link_state != LINK_STATE_UNKNOWN) ?
1157 bgep->param_link_duplex : LINK_DUPLEX_UNKNOWN;