Lines Matching refs:ecmd
128 static int alx_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd) in alx_get_settings() argument
133 ecmd->supported = SUPPORTED_Autoneg | in alx_get_settings()
138 ecmd->supported |= SUPPORTED_1000baseT_Full; in alx_get_settings()
139 ecmd->supported |= alx_get_supported_speeds(hw); in alx_get_settings()
141 ecmd->advertising = ADVERTISED_TP; in alx_get_settings()
143 ecmd->advertising |= hw->adv_cfg; in alx_get_settings()
145 ecmd->port = PORT_TP; in alx_get_settings()
146 ecmd->phy_address = 0; in alx_get_settings()
149 ecmd->autoneg = AUTONEG_ENABLE; in alx_get_settings()
151 ecmd->autoneg = AUTONEG_DISABLE; in alx_get_settings()
152 ecmd->transceiver = XCVR_INTERNAL; in alx_get_settings()
156 ecmd->advertising |= ADVERTISED_Pause; in alx_get_settings()
159 ecmd->advertising |= ADVERTISED_Asym_Pause; in alx_get_settings()
161 ecmd->advertising |= ADVERTISED_Asym_Pause; in alx_get_settings()
165 ethtool_cmd_speed_set(ecmd, hw->link_speed); in alx_get_settings()
166 ecmd->duplex = hw->duplex; in alx_get_settings()
171 static int alx_set_settings(struct net_device *netdev, struct ethtool_cmd *ecmd) in alx_set_settings() argument
179 if (ecmd->autoneg == AUTONEG_ENABLE) { in alx_set_settings()
180 if (ecmd->advertising & ~alx_get_supported_speeds(hw)) in alx_set_settings()
182 adv_cfg = ecmd->advertising | ADVERTISED_Autoneg; in alx_set_settings()
184 adv_cfg = alx_speed_to_ethadv(ethtool_cmd_speed(ecmd), in alx_set_settings()
185 ecmd->duplex); in alx_set_settings()