Lines Matching refs:pdata
439 parse_generic_sysctl(struct xgbe_prv_data *pdata, char *buf, in parse_generic_sysctl() argument
442 struct sysctl_op *sys_op = pdata->sys_op; in parse_generic_sysctl()
508 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xgmac_reg_addr_handler() local
523 pdata->sysctl_xgmac_reg); in sysctl_xgmac_reg_addr_handler()
525 pdata->sysctl_xgmac_reg); in sysctl_xgmac_reg_addr_handler()
535 pdata->sysctl_xgmac_reg = reg; in sysctl_xgmac_reg_addr_handler()
545 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_get_drv_info_handler() local
546 struct xgbe_hw_features *hw_feat = &pdata->hw_feat; in sysctl_get_drv_info_handler()
565 pdata->pcie_bus, pdata->pcie_device, pdata->pcie_func); in sysctl_get_drv_info_handler()
578 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_get_link_info_handler() local
590 sbuf_printf(sb, "\nLink is %s", pdata->phy.link ? "Up" : "Down"); in sysctl_get_link_info_handler()
628 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_coalesce_handler() local
629 struct xgbe_hw_if *hw_if = &pdata->hw_if; in sysctl_coalesce_handler()
630 struct sysctl_op *sys_op = pdata->sys_op; in sysctl_coalesce_handler()
645 sys_op->rx_coalesce_usecs = pdata->rx_usecs; in sysctl_coalesce_handler()
646 sys_op->rx_max_coalesced_frames = pdata->rx_frames; in sysctl_coalesce_handler()
647 sys_op->tx_max_coalesced_frames = pdata->tx_frames; in sysctl_coalesce_handler()
709 parse_generic_sysctl(pdata, buf, sysctl_coalesce, in sysctl_coalesce_handler()
712 rx_riwt = hw_if->usec_to_riwt(pdata, sys_op->rx_coalesce_usecs); in sysctl_coalesce_handler()
723 hw_if->riwt_to_usec(pdata, XGMAC_MAX_DMA_RIWT)); in sysctl_coalesce_handler()
726 if (rx_frames > pdata->rx_desc_count) { in sysctl_coalesce_handler()
728 pdata->rx_desc_count); in sysctl_coalesce_handler()
735 if (tx_frames > pdata->tx_desc_count) { in sysctl_coalesce_handler()
737 pdata->tx_desc_count); in sysctl_coalesce_handler()
741 pdata->rx_riwt = rx_riwt; in sysctl_coalesce_handler()
742 pdata->rx_usecs = rx_usecs; in sysctl_coalesce_handler()
743 pdata->rx_frames = rx_frames; in sysctl_coalesce_handler()
744 hw_if->config_rx_coalesce(pdata); in sysctl_coalesce_handler()
746 pdata->tx_frames = tx_frames; in sysctl_coalesce_handler()
747 hw_if->config_tx_coalesce(pdata); in sysctl_coalesce_handler()
758 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_pauseparam_handler() local
759 struct sysctl_op *sys_op = pdata->sys_op; in sysctl_pauseparam_handler()
776 sys_op->autoneg = pdata->phy.pause_autoneg; in sysctl_pauseparam_handler()
777 sys_op->tx_pause = pdata->phy.tx_pause; in sysctl_pauseparam_handler()
778 sys_op->rx_pause = pdata->phy.rx_pause; in sysctl_pauseparam_handler()
788 if (pdata->phy.lp_advertising) { in sysctl_pauseparam_handler()
791 if (pdata->phy.advertising & pdata->phy.lp_advertising & in sysctl_pauseparam_handler()
795 } else if (pdata->phy.advertising & in sysctl_pauseparam_handler()
796 pdata->phy.lp_advertising & ADVERTISED_Asym_Pause) { in sysctl_pauseparam_handler()
797 if (pdata->phy.advertising & ADVERTISED_Pause) in sysctl_pauseparam_handler()
799 else if (pdata->phy.lp_advertising & in sysctl_pauseparam_handler()
816 parse_generic_sysctl(pdata, buf, sysctl_pauseparam, in sysctl_pauseparam_handler()
819 if (sys_op->autoneg && (pdata->phy.autoneg != AUTONEG_ENABLE)) { in sysctl_pauseparam_handler()
824 pdata->phy.pause_autoneg = sys_op->autoneg; in sysctl_pauseparam_handler()
825 pdata->phy.tx_pause = sys_op->tx_pause; in sysctl_pauseparam_handler()
826 pdata->phy.rx_pause = sys_op->rx_pause; in sysctl_pauseparam_handler()
828 XGBE_CLR_ADV(&pdata->phy, Pause); in sysctl_pauseparam_handler()
829 XGBE_CLR_ADV(&pdata->phy, Asym_Pause); in sysctl_pauseparam_handler()
832 XGBE_SET_ADV(&pdata->phy, Pause); in sysctl_pauseparam_handler()
833 XGBE_SET_ADV(&pdata->phy, Asym_Pause); in sysctl_pauseparam_handler()
838 if (XGBE_ADV(&pdata->phy, Asym_Pause)) in sysctl_pauseparam_handler()
839 XGBE_CLR_ADV(&pdata->phy, Asym_Pause); in sysctl_pauseparam_handler()
841 XGBE_SET_ADV(&pdata->phy, Asym_Pause); in sysctl_pauseparam_handler()
844 if (test_bit(XGBE_LINK_INIT, &pdata->dev_state)) in sysctl_pauseparam_handler()
845 rc = pdata->phy_if.phy_config_aneg(pdata); in sysctl_pauseparam_handler()
855 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_link_ksettings_handler() local
856 struct sysctl_op *sys_op = pdata->sys_op; in sysctl_link_ksettings_handler()
874 sys_op->autoneg = pdata->phy.autoneg; in sysctl_link_ksettings_handler()
875 sys_op->speed = pdata->phy.speed; in sysctl_link_ksettings_handler()
876 sys_op->duplex = pdata->phy.duplex; in sysctl_link_ksettings_handler()
878 XGBE_LM_COPY(&pdata->phy, supported, &pdata->phy, supported); in sysctl_link_ksettings_handler()
879 XGBE_LM_COPY(&pdata->phy, advertising, &pdata->phy, advertising); in sysctl_link_ksettings_handler()
880 XGBE_LM_COPY(&pdata->phy, lp_advertising, &pdata->phy, lp_advertising); in sysctl_link_ksettings_handler()
935 parse_generic_sysctl(pdata, buf, sysctl_linksettings, in sysctl_link_ksettings_handler()
948 if (!pdata->phy_if.phy_valid_speed(pdata, speed)) { in sysctl_link_ksettings_handler()
960 pdata->phy.autoneg = sys_op->autoneg; in sysctl_link_ksettings_handler()
961 pdata->phy.speed = speed; in sysctl_link_ksettings_handler()
962 pdata->phy.duplex = sys_op->duplex; in sysctl_link_ksettings_handler()
965 XGBE_SET_ADV(&pdata->phy, Autoneg); in sysctl_link_ksettings_handler()
967 XGBE_CLR_ADV(&pdata->phy, Autoneg); in sysctl_link_ksettings_handler()
969 if (test_bit(XGBE_LINK_INIT, &pdata->dev_state)) in sysctl_link_ksettings_handler()
970 rc = pdata->phy_if.phy_config_aneg(pdata); in sysctl_link_ksettings_handler()
979 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_ringparam_handler() local
980 struct sysctl_op *sys_op = pdata->sys_op; in sysctl_ringparam_handler()
1001 sys_op->rx_pending = pdata->rx_desc_count; in sysctl_ringparam_handler()
1002 sys_op->tx_pending = pdata->tx_desc_count; in sysctl_ringparam_handler()
1033 parse_generic_sysctl(pdata, buf, sysctl_ringparam, in sysctl_ringparam_handler()
1065 if ((rx == pdata->rx_desc_count) && in sysctl_ringparam_handler()
1066 (tx == pdata->tx_desc_count)) in sysctl_ringparam_handler()
1069 pdata->rx_desc_count = rx; in sysctl_ringparam_handler()
1070 pdata->tx_desc_count = tx; in sysctl_ringparam_handler()
1082 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_channels_handler() local
1083 struct sysctl_op *sys_op = pdata->sys_op; in sysctl_channels_handler()
1102 rx = min(pdata->hw_feat.rx_ch_cnt, pdata->rx_max_channel_count); in sysctl_channels_handler()
1103 rx = min(rx, pdata->channel_irq_count); in sysctl_channels_handler()
1104 tx = min(pdata->hw_feat.tx_ch_cnt, pdata->tx_max_channel_count); in sysctl_channels_handler()
1105 tx = min(tx, pdata->channel_irq_count); in sysctl_channels_handler()
1106 tx = min(tx, pdata->tx_max_q_count); in sysctl_channels_handler()
1115 rx = pdata->rx_ring_count; in sysctl_channels_handler()
1116 tx = pdata->tx_ring_count; in sysctl_channels_handler()
1153 parse_generic_sysctl(pdata, buf, sysctl_channels, in sysctl_channels_handler()
1168 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_mac_stats_handler() local
1181 pdata->hw_if.read_mmc_stats(pdata); in sysctl_mac_stats_handler()
1185 *(uint64_t *)((uint8_t *)pdata + xgbe_gstring_stats[i].stat_offset)); in sysctl_mac_stats_handler()
1187 for (i = 0; i < pdata->tx_ring_count; i++) { in sysctl_mac_stats_handler()
1191 i, pdata->ext_stats.txq_packets[i], in sysctl_mac_stats_handler()
1192 i, pdata->ext_stats.txq_bytes[i]); in sysctl_mac_stats_handler()
1194 for (i = 0; i < pdata->rx_ring_count; i++) { in sysctl_mac_stats_handler()
1198 i, pdata->ext_stats.rxq_packets[i], in sysctl_mac_stats_handler()
1199 i, pdata->ext_stats.rxq_bytes[i]); in sysctl_mac_stats_handler()
1213 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xgmac_reg_value_handler() local
1227 value = XGMAC_IOREAD(pdata, pdata->sysctl_xgmac_reg); in sysctl_xgmac_reg_value_handler()
1239 XGMAC_IOWRITE(pdata, pdata->sysctl_xgmac_reg, value); in sysctl_xgmac_reg_value_handler()
1249 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xpcs_mmd_reg_handler() local
1264 pdata->sysctl_xpcs_mmd); in sysctl_xpcs_mmd_reg_handler()
1266 pdata->sysctl_xpcs_mmd); in sysctl_xpcs_mmd_reg_handler()
1276 pdata->sysctl_xpcs_mmd = reg; in sysctl_xpcs_mmd_reg_handler()
1286 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xpcs_reg_addr_handler() local
1301 pdata->sysctl_xpcs_reg); in sysctl_xpcs_reg_addr_handler()
1303 pdata->sysctl_xpcs_reg); in sysctl_xpcs_reg_addr_handler()
1313 pdata->sysctl_xpcs_reg = reg; in sysctl_xpcs_reg_addr_handler()
1323 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xpcs_reg_value_handler() local
1337 value = XMDIO_READ(pdata, pdata->sysctl_xpcs_mmd, in sysctl_xpcs_reg_value_handler()
1338 pdata->sysctl_xpcs_reg); in sysctl_xpcs_reg_value_handler()
1350 XMDIO_WRITE(pdata, pdata->sysctl_xpcs_mmd, in sysctl_xpcs_reg_value_handler()
1351 pdata->sysctl_xpcs_reg, value); in sysctl_xpcs_reg_value_handler()
1361 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xprop_reg_addr_handler() local
1376 pdata->sysctl_xprop_reg); in sysctl_xprop_reg_addr_handler()
1378 pdata->sysctl_xprop_reg); in sysctl_xprop_reg_addr_handler()
1388 pdata->sysctl_xprop_reg = reg; in sysctl_xprop_reg_addr_handler()
1398 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xprop_reg_value_handler() local
1412 value = XP_IOREAD(pdata, pdata->sysctl_xprop_reg); in sysctl_xprop_reg_value_handler()
1424 XP_IOWRITE(pdata, pdata->sysctl_xprop_reg, value); in sysctl_xprop_reg_value_handler()
1434 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xi2c_reg_addr_handler() local
1449 pdata->sysctl_xi2c_reg); in sysctl_xi2c_reg_addr_handler()
1451 pdata->sysctl_xi2c_reg); in sysctl_xi2c_reg_addr_handler()
1461 pdata->sysctl_xi2c_reg = reg; in sysctl_xi2c_reg_addr_handler()
1471 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_xi2c_reg_value_handler() local
1485 value = XI2C_IOREAD(pdata, pdata->sysctl_xi2c_reg); in sysctl_xi2c_reg_value_handler()
1497 XI2C_IOWRITE(pdata, pdata->sysctl_xi2c_reg, value); in sysctl_xi2c_reg_value_handler()
1507 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_an_cdr_wr_handler() local
1522 pdata->sysctl_an_cdr_workaround); in sysctl_an_cdr_wr_handler()
1523 sbuf_printf(sb, "%d\n", pdata->sysctl_an_cdr_workaround); in sysctl_an_cdr_wr_handler()
1536 pdata->sysctl_an_cdr_workaround = 1; in sysctl_an_cdr_wr_handler()
1538 pdata->sysctl_an_cdr_workaround = 0; in sysctl_an_cdr_wr_handler()
1548 struct xgbe_prv_data *pdata = (struct xgbe_prv_data *)arg1; in sysctl_an_cdr_track_early_handler() local
1563 pdata->sysctl_an_cdr_track_early); in sysctl_an_cdr_track_early_handler()
1564 sbuf_printf(sb, "%d\n", pdata->sysctl_an_cdr_track_early); in sysctl_an_cdr_track_early_handler()
1577 pdata->sysctl_an_cdr_track_early = 1; in sysctl_an_cdr_track_early_handler()
1579 pdata->sysctl_an_cdr_track_early = 0; in sysctl_an_cdr_track_early_handler()
1587 axgbe_sysctl_exit(struct xgbe_prv_data *pdata) in axgbe_sysctl_exit() argument
1590 if (pdata->sys_op) in axgbe_sysctl_exit()
1591 free(pdata->sys_op, M_AXGBE); in axgbe_sysctl_exit()
1595 axgbe_sysctl_init(struct xgbe_prv_data *pdata) in axgbe_sysctl_init() argument
1603 pdata->sys_op = sys_op; in axgbe_sysctl_init()
1605 clist = device_get_sysctl_ctx(pdata->dev); in axgbe_sysctl_init()
1606 parent = device_get_sysctl_tree(pdata->dev); in axgbe_sysctl_init()
1610 pdata->sysctl_xgmac_reg = 0; in axgbe_sysctl_init()
1611 pdata->sysctl_xpcs_mmd = 1; in axgbe_sysctl_init()
1612 pdata->sysctl_xpcs_reg = 0; in axgbe_sysctl_init()
1615 &pdata->debug_level, 0, "axgbe log level -- higher is verbose"); in axgbe_sysctl_init()
1618 CTLFLAG_RDTUN, &pdata->sph_enable, 1, in axgbe_sysctl_init()
1622 CTLFLAG_RWTUN, &pdata->link_workaround, 0, in axgbe_sysctl_init()
1627 pdata, 0, sysctl_xgmac_reg_addr_handler, "IU", in axgbe_sysctl_init()
1632 pdata, 0, sysctl_xgmac_reg_value_handler, "IU", in axgbe_sysctl_init()
1637 pdata, 0, sysctl_xpcs_mmd_reg_handler, "IU", "xpcs mmd register"); in axgbe_sysctl_init()
1641 pdata, 0, sysctl_xpcs_reg_addr_handler, "IU", "xpcs register"); in axgbe_sysctl_init()
1645 pdata, 0, sysctl_xpcs_reg_value_handler, "IU", in axgbe_sysctl_init()
1648 if (pdata->xpcs_res) { in axgbe_sysctl_init()
1651 pdata, 0, sysctl_xprop_reg_addr_handler, in axgbe_sysctl_init()
1656 pdata, 0, sysctl_xprop_reg_value_handler, in axgbe_sysctl_init()
1660 if (pdata->xpcs_res) { in axgbe_sysctl_init()
1663 pdata, 0, sysctl_xi2c_reg_addr_handler, in axgbe_sysctl_init()
1668 pdata, 0, sysctl_xi2c_reg_value_handler, in axgbe_sysctl_init()
1672 if (pdata->vdata->an_cdr_workaround) { in axgbe_sysctl_init()
1675 pdata, 0, sysctl_an_cdr_wr_handler, "IU", in axgbe_sysctl_init()
1680 pdata, 0, sysctl_an_cdr_track_early_handler, "IU", in axgbe_sysctl_init()
1686 pdata, 0, sysctl_get_drv_info_handler, "IU", in axgbe_sysctl_init()
1691 pdata, 0, sysctl_get_link_info_handler, "IU", in axgbe_sysctl_init()
1696 pdata, 0, sysctl_coalesce_handler, "IU", in axgbe_sysctl_init()
1701 pdata, 0, sysctl_pauseparam_handler, "IU", in axgbe_sysctl_init()
1706 pdata, 0, sysctl_link_ksettings_handler, "IU", in axgbe_sysctl_init()
1711 pdata, 0, sysctl_ringparam_handler, "IU", in axgbe_sysctl_init()
1716 pdata, 0, sysctl_channels_handler, "IU", in axgbe_sysctl_init()
1721 pdata, 0, sysctl_mac_stats_handler, "IU", in axgbe_sysctl_init()