Lines Matching refs:pdata
420 parse_generic_sysctl(struct xgbe_prv_data *pdata, char *buf, in parse_generic_sysctl() argument
423 struct sysctl_op *sys_op = pdata->sys_op; in parse_generic_sysctl()
489 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xgmac_reg_addr_handler() local
504 pdata->sysctl_xgmac_reg); in sysctl_xgmac_reg_addr_handler()
506 pdata->sysctl_xgmac_reg); in sysctl_xgmac_reg_addr_handler()
516 pdata->sysctl_xgmac_reg = reg; in sysctl_xgmac_reg_addr_handler()
526 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_get_drv_info_handler() local
527 struct xgbe_hw_features *hw_feat = &pdata->hw_feat; in sysctl_get_drv_info_handler()
546 pdata->pcie_bus, pdata->pcie_device, pdata->pcie_func); in sysctl_get_drv_info_handler()
559 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_get_link_info_handler() local
571 sbuf_printf(sb, "\nLink is %s", pdata->phy.link ? "Up" : "Down"); in sysctl_get_link_info_handler()
609 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_coalesce_handler() local
610 struct xgbe_hw_if *hw_if = &pdata->hw_if; in sysctl_coalesce_handler()
611 struct sysctl_op *sys_op = pdata->sys_op; in sysctl_coalesce_handler()
626 sys_op->rx_coalesce_usecs = pdata->rx_usecs; in sysctl_coalesce_handler()
627 sys_op->rx_max_coalesced_frames = pdata->rx_frames; in sysctl_coalesce_handler()
628 sys_op->tx_max_coalesced_frames = pdata->tx_frames; in sysctl_coalesce_handler()
690 parse_generic_sysctl(pdata, buf, sysctl_coalesce, in sysctl_coalesce_handler()
693 rx_riwt = hw_if->usec_to_riwt(pdata, sys_op->rx_coalesce_usecs); in sysctl_coalesce_handler()
704 hw_if->riwt_to_usec(pdata, XGMAC_MAX_DMA_RIWT)); in sysctl_coalesce_handler()
707 if (rx_frames > pdata->rx_desc_count) { in sysctl_coalesce_handler()
709 pdata->rx_desc_count); in sysctl_coalesce_handler()
716 if (tx_frames > pdata->tx_desc_count) { in sysctl_coalesce_handler()
718 pdata->tx_desc_count); in sysctl_coalesce_handler()
722 pdata->rx_riwt = rx_riwt; in sysctl_coalesce_handler()
723 pdata->rx_usecs = rx_usecs; in sysctl_coalesce_handler()
724 pdata->rx_frames = rx_frames; in sysctl_coalesce_handler()
725 hw_if->config_rx_coalesce(pdata); in sysctl_coalesce_handler()
727 pdata->tx_frames = tx_frames; in sysctl_coalesce_handler()
728 hw_if->config_tx_coalesce(pdata); in sysctl_coalesce_handler()
739 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_pauseparam_handler() local
740 struct sysctl_op *sys_op = pdata->sys_op; in sysctl_pauseparam_handler()
757 sys_op->autoneg = pdata->phy.pause_autoneg; in sysctl_pauseparam_handler()
758 sys_op->tx_pause = pdata->phy.tx_pause; in sysctl_pauseparam_handler()
759 sys_op->rx_pause = pdata->phy.rx_pause; in sysctl_pauseparam_handler()
769 if (pdata->phy.lp_advertising) { in sysctl_pauseparam_handler()
772 if (pdata->phy.advertising & pdata->phy.lp_advertising & in sysctl_pauseparam_handler()
776 } else if (pdata->phy.advertising & in sysctl_pauseparam_handler()
777 pdata->phy.lp_advertising & ADVERTISED_Asym_Pause) { in sysctl_pauseparam_handler()
778 if (pdata->phy.advertising & ADVERTISED_Pause) in sysctl_pauseparam_handler()
780 else if (pdata->phy.lp_advertising & in sysctl_pauseparam_handler()
797 parse_generic_sysctl(pdata, buf, sysctl_pauseparam, in sysctl_pauseparam_handler()
800 if (sys_op->autoneg && (pdata->phy.autoneg != AUTONEG_ENABLE)) { in sysctl_pauseparam_handler()
805 pdata->phy.pause_autoneg = sys_op->autoneg; in sysctl_pauseparam_handler()
806 pdata->phy.tx_pause = sys_op->tx_pause; in sysctl_pauseparam_handler()
807 pdata->phy.rx_pause = sys_op->rx_pause; in sysctl_pauseparam_handler()
809 XGBE_CLR_ADV(&pdata->phy, Pause); in sysctl_pauseparam_handler()
810 XGBE_CLR_ADV(&pdata->phy, Asym_Pause); in sysctl_pauseparam_handler()
813 XGBE_SET_ADV(&pdata->phy, Pause); in sysctl_pauseparam_handler()
814 XGBE_SET_ADV(&pdata->phy, Asym_Pause); in sysctl_pauseparam_handler()
819 if (XGBE_ADV(&pdata->phy, Asym_Pause)) in sysctl_pauseparam_handler()
820 XGBE_CLR_ADV(&pdata->phy, Asym_Pause); in sysctl_pauseparam_handler()
822 XGBE_SET_ADV(&pdata->phy, Asym_Pause); in sysctl_pauseparam_handler()
825 if (test_bit(XGBE_LINK_INIT, &pdata->dev_state)) in sysctl_pauseparam_handler()
826 rc = pdata->phy_if.phy_config_aneg(pdata); in sysctl_pauseparam_handler()
836 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_link_ksettings_handler() local
837 struct sysctl_op *sys_op = pdata->sys_op; in sysctl_link_ksettings_handler()
855 sys_op->autoneg = pdata->phy.autoneg; in sysctl_link_ksettings_handler()
856 sys_op->speed = pdata->phy.speed; in sysctl_link_ksettings_handler()
857 sys_op->duplex = pdata->phy.duplex; in sysctl_link_ksettings_handler()
859 XGBE_LM_COPY(&pdata->phy, supported, &pdata->phy, supported); in sysctl_link_ksettings_handler()
860 XGBE_LM_COPY(&pdata->phy, advertising, &pdata->phy, advertising); in sysctl_link_ksettings_handler()
861 XGBE_LM_COPY(&pdata->phy, lp_advertising, &pdata->phy, lp_advertising); in sysctl_link_ksettings_handler()
916 parse_generic_sysctl(pdata, buf, sysctl_linksettings, in sysctl_link_ksettings_handler()
929 if (!pdata->phy_if.phy_valid_speed(pdata, speed)) { in sysctl_link_ksettings_handler()
941 pdata->phy.autoneg = sys_op->autoneg; in sysctl_link_ksettings_handler()
942 pdata->phy.speed = speed; in sysctl_link_ksettings_handler()
943 pdata->phy.duplex = sys_op->duplex; in sysctl_link_ksettings_handler()
946 XGBE_SET_ADV(&pdata->phy, Autoneg); in sysctl_link_ksettings_handler()
948 XGBE_CLR_ADV(&pdata->phy, Autoneg); in sysctl_link_ksettings_handler()
950 if (test_bit(XGBE_LINK_INIT, &pdata->dev_state)) in sysctl_link_ksettings_handler()
951 rc = pdata->phy_if.phy_config_aneg(pdata); in sysctl_link_ksettings_handler()
960 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_ringparam_handler() local
961 struct sysctl_op *sys_op = pdata->sys_op; in sysctl_ringparam_handler()
982 sys_op->rx_pending = pdata->rx_desc_count; in sysctl_ringparam_handler()
983 sys_op->tx_pending = pdata->tx_desc_count; in sysctl_ringparam_handler()
1014 parse_generic_sysctl(pdata, buf, sysctl_ringparam, in sysctl_ringparam_handler()
1046 if ((rx == pdata->rx_desc_count) && in sysctl_ringparam_handler()
1047 (tx == pdata->tx_desc_count)) in sysctl_ringparam_handler()
1050 pdata->rx_desc_count = rx; in sysctl_ringparam_handler()
1051 pdata->tx_desc_count = tx; in sysctl_ringparam_handler()
1063 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_channels_handler() local
1064 struct sysctl_op *sys_op = pdata->sys_op; in sysctl_channels_handler()
1083 rx = min(pdata->hw_feat.rx_ch_cnt, pdata->rx_max_channel_count); in sysctl_channels_handler()
1084 rx = min(rx, pdata->channel_irq_count); in sysctl_channels_handler()
1085 tx = min(pdata->hw_feat.tx_ch_cnt, pdata->tx_max_channel_count); in sysctl_channels_handler()
1086 tx = min(tx, pdata->channel_irq_count); in sysctl_channels_handler()
1087 tx = min(tx, pdata->tx_max_q_count); in sysctl_channels_handler()
1096 rx = pdata->rx_ring_count; in sysctl_channels_handler()
1097 tx = pdata->tx_ring_count; in sysctl_channels_handler()
1134 parse_generic_sysctl(pdata, buf, sysctl_channels, in sysctl_channels_handler()
1149 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_mac_stats_handler() local
1162 pdata->hw_if.read_mmc_stats(pdata); in sysctl_mac_stats_handler()
1166 *(uint64_t *)((uint8_t *)pdata + xgbe_gstring_stats[i].stat_offset)); in sysctl_mac_stats_handler()
1168 for (i = 0; i < pdata->tx_ring_count; i++) { in sysctl_mac_stats_handler()
1172 i, pdata->ext_stats.txq_packets[i], in sysctl_mac_stats_handler()
1173 i, pdata->ext_stats.txq_bytes[i]); in sysctl_mac_stats_handler()
1175 for (i = 0; i < pdata->rx_ring_count; i++) { in sysctl_mac_stats_handler()
1179 i, pdata->ext_stats.rxq_packets[i], in sysctl_mac_stats_handler()
1180 i, pdata->ext_stats.rxq_bytes[i]); in sysctl_mac_stats_handler()
1194 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xgmac_reg_value_handler() local
1208 value = XGMAC_IOREAD(pdata, pdata->sysctl_xgmac_reg); in sysctl_xgmac_reg_value_handler()
1220 XGMAC_IOWRITE(pdata, pdata->sysctl_xgmac_reg, value); in sysctl_xgmac_reg_value_handler()
1230 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xpcs_mmd_reg_handler() local
1245 pdata->sysctl_xpcs_mmd); in sysctl_xpcs_mmd_reg_handler()
1247 pdata->sysctl_xpcs_mmd); in sysctl_xpcs_mmd_reg_handler()
1257 pdata->sysctl_xpcs_mmd = reg; in sysctl_xpcs_mmd_reg_handler()
1267 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xpcs_reg_addr_handler() local
1282 pdata->sysctl_xpcs_reg); in sysctl_xpcs_reg_addr_handler()
1284 pdata->sysctl_xpcs_reg); in sysctl_xpcs_reg_addr_handler()
1294 pdata->sysctl_xpcs_reg = reg; in sysctl_xpcs_reg_addr_handler()
1304 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xpcs_reg_value_handler() local
1318 value = XMDIO_READ(pdata, pdata->sysctl_xpcs_mmd, in sysctl_xpcs_reg_value_handler()
1319 pdata->sysctl_xpcs_reg); in sysctl_xpcs_reg_value_handler()
1331 XMDIO_WRITE(pdata, pdata->sysctl_xpcs_mmd, in sysctl_xpcs_reg_value_handler()
1332 pdata->sysctl_xpcs_reg, value); in sysctl_xpcs_reg_value_handler()
1342 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xprop_reg_addr_handler() local
1357 pdata->sysctl_xprop_reg); in sysctl_xprop_reg_addr_handler()
1359 pdata->sysctl_xprop_reg); in sysctl_xprop_reg_addr_handler()
1369 pdata->sysctl_xprop_reg = reg; in sysctl_xprop_reg_addr_handler()
1379 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xprop_reg_value_handler() local
1393 value = XP_IOREAD(pdata, pdata->sysctl_xprop_reg); in sysctl_xprop_reg_value_handler()
1405 XP_IOWRITE(pdata, pdata->sysctl_xprop_reg, value); in sysctl_xprop_reg_value_handler()
1415 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xi2c_reg_addr_handler() local
1430 pdata->sysctl_xi2c_reg); in sysctl_xi2c_reg_addr_handler()
1432 pdata->sysctl_xi2c_reg); in sysctl_xi2c_reg_addr_handler()
1442 pdata->sysctl_xi2c_reg = reg; in sysctl_xi2c_reg_addr_handler()
1452 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xi2c_reg_value_handler() local
1466 value = XI2C_IOREAD(pdata, pdata->sysctl_xi2c_reg); in sysctl_xi2c_reg_value_handler()
1478 XI2C_IOWRITE(pdata, pdata->sysctl_xi2c_reg, value); in sysctl_xi2c_reg_value_handler()
1488 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_an_cdr_wr_handler() local
1503 pdata->sysctl_an_cdr_workaround); in sysctl_an_cdr_wr_handler()
1504 sbuf_printf(sb, "%d\n", pdata->sysctl_an_cdr_workaround); in sysctl_an_cdr_wr_handler()
1517 pdata->sysctl_an_cdr_workaround = 1; in sysctl_an_cdr_wr_handler()
1519 pdata->sysctl_an_cdr_workaround = 0; in sysctl_an_cdr_wr_handler()
1529 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_an_cdr_track_early_handler() local
1544 pdata->sysctl_an_cdr_track_early); in sysctl_an_cdr_track_early_handler()
1545 sbuf_printf(sb, "%d\n", pdata->sysctl_an_cdr_track_early); in sysctl_an_cdr_track_early_handler()
1558 pdata->sysctl_an_cdr_track_early = 1; in sysctl_an_cdr_track_early_handler()
1560 pdata->sysctl_an_cdr_track_early = 0; in sysctl_an_cdr_track_early_handler()
1568 axgbe_sysctl_exit(struct xgbe_prv_data *pdata) in axgbe_sysctl_exit() argument
1571 if (pdata->sys_op) in axgbe_sysctl_exit()
1572 free(pdata->sys_op, M_AXGBE); in axgbe_sysctl_exit()
1576 axgbe_sysctl_init(struct xgbe_prv_data *pdata) in axgbe_sysctl_init() argument
1584 pdata->sys_op = sys_op; in axgbe_sysctl_init()
1586 clist = device_get_sysctl_ctx(pdata->dev); in axgbe_sysctl_init()
1587 parent = device_get_sysctl_tree(pdata->dev); in axgbe_sysctl_init()
1591 pdata->sysctl_xgmac_reg = 0; in axgbe_sysctl_init()
1592 pdata->sysctl_xpcs_mmd = 1; in axgbe_sysctl_init()
1593 pdata->sysctl_xpcs_reg = 0; in axgbe_sysctl_init()
1594 pdata->link_workaround = 1; in axgbe_sysctl_init()
1595 pdata->tx_pause = 1; in axgbe_sysctl_init()
1596 pdata->rx_pause = 1; in axgbe_sysctl_init()
1597 pdata->enable_rss = 1; in axgbe_sysctl_init()
1600 &pdata->debug_level, 0, "axgbe log level -- higher is verbose"); in axgbe_sysctl_init()
1603 CTLFLAG_RDTUN, &pdata->sph_enable, 1, in axgbe_sysctl_init()
1607 CTLFLAG_RWTUN, &pdata->link_workaround, 0, in axgbe_sysctl_init()
1611 CTLFLAG_RDTUN, &pdata->enable_rss, 1, in axgbe_sysctl_init()
1615 CTLFLAG_RDTUN, &pdata->tx_pause, 1, in axgbe_sysctl_init()
1619 CTLFLAG_RDTUN, &pdata->rx_pause, 1, in axgbe_sysctl_init()
1624 pdata, 0, sysctl_xgmac_reg_addr_handler, "IU", in axgbe_sysctl_init()
1629 pdata, 0, sysctl_xgmac_reg_value_handler, "IU", in axgbe_sysctl_init()
1634 pdata, 0, sysctl_xpcs_mmd_reg_handler, "IU", "xpcs mmd register"); in axgbe_sysctl_init()
1638 pdata, 0, sysctl_xpcs_reg_addr_handler, "IU", "xpcs register"); in axgbe_sysctl_init()
1642 pdata, 0, sysctl_xpcs_reg_value_handler, "IU", in axgbe_sysctl_init()
1645 if (pdata->xpcs_res) { in axgbe_sysctl_init()
1648 pdata, 0, sysctl_xprop_reg_addr_handler, in axgbe_sysctl_init()
1653 pdata, 0, sysctl_xprop_reg_value_handler, in axgbe_sysctl_init()
1657 if (pdata->xpcs_res) { in axgbe_sysctl_init()
1660 pdata, 0, sysctl_xi2c_reg_addr_handler, in axgbe_sysctl_init()
1665 pdata, 0, sysctl_xi2c_reg_value_handler, in axgbe_sysctl_init()
1669 if (pdata->vdata->an_cdr_workaround) { in axgbe_sysctl_init()
1672 pdata, 0, sysctl_an_cdr_wr_handler, "IU", in axgbe_sysctl_init()
1677 pdata, 0, sysctl_an_cdr_track_early_handler, "IU", in axgbe_sysctl_init()
1683 pdata, 0, sysctl_get_drv_info_handler, "IU", in axgbe_sysctl_init()
1688 pdata, 0, sysctl_get_link_info_handler, "IU", in axgbe_sysctl_init()
1693 pdata, 0, sysctl_coalesce_handler, "IU", in axgbe_sysctl_init()
1698 pdata, 0, sysctl_pauseparam_handler, "IU", in axgbe_sysctl_init()
1703 pdata, 0, sysctl_link_ksettings_handler, "IU", in axgbe_sysctl_init()
1708 pdata, 0, sysctl_ringparam_handler, "IU", in axgbe_sysctl_init()
1713 pdata, 0, sysctl_channels_handler, "IU", in axgbe_sysctl_init()
1718 pdata, 0, sysctl_mac_stats_handler, "IU", in axgbe_sysctl_init()