Lines Matching full:ks
2100 * @ks: ethtool link ksettings struct to fill out
2107 struct ethtool_link_ksettings *ks, u32 req_speeds, in ice_linkmode_set_bit() argument
2110 linkmode_set_bit(phy_to_ethtool->link_mode, ks->link_modes.supported); in ice_linkmode_set_bit()
2115 ks->link_modes.advertising); in ice_linkmode_set_bit()
2121 * @ks: ethtool link ksettings struct to fill out
2125 struct ethtool_link_ksettings *ks) in ice_phy_type_to_ethtool() argument
2192 linkmode_zero(ks->link_modes.supported); in ice_phy_type_to_ethtool()
2193 linkmode_zero(ks->link_modes.advertising); in ice_phy_type_to_ethtool()
2197 ice_linkmode_set_bit(&phy_type_low_lkup[i], ks, in ice_phy_type_to_ethtool()
2204 ice_linkmode_set_bit(&phy_type_high_lkup[i], ks, in ice_phy_type_to_ethtool()
2216 * @ks: ethtool ksettings to fill in
2220 ice_get_settings_link_up(struct ethtool_link_ksettings *ks, in ice_get_settings_link_up() argument
2231 ice_phy_type_to_ethtool(netdev, ks); in ice_get_settings_link_up()
2235 ks->base.speed = SPEED_200000; in ice_get_settings_link_up()
2238 ks->base.speed = SPEED_100000; in ice_get_settings_link_up()
2241 ks->base.speed = SPEED_50000; in ice_get_settings_link_up()
2244 ks->base.speed = SPEED_40000; in ice_get_settings_link_up()
2247 ks->base.speed = SPEED_25000; in ice_get_settings_link_up()
2250 ks->base.speed = SPEED_20000; in ice_get_settings_link_up()
2253 ks->base.speed = SPEED_10000; in ice_get_settings_link_up()
2256 ks->base.speed = SPEED_5000; in ice_get_settings_link_up()
2259 ks->base.speed = SPEED_2500; in ice_get_settings_link_up()
2262 ks->base.speed = SPEED_1000; in ice_get_settings_link_up()
2265 ks->base.speed = SPEED_100; in ice_get_settings_link_up()
2272 ks->base.duplex = DUPLEX_FULL; in ice_get_settings_link_up()
2275 ethtool_link_ksettings_add_link_mode(ks, lp_advertising, in ice_get_settings_link_up()
2281 ethtool_link_ksettings_add_link_mode(ks, lp_advertising, Pause); in ice_get_settings_link_up()
2284 ethtool_link_ksettings_add_link_mode(ks, lp_advertising, Pause); in ice_get_settings_link_up()
2285 ethtool_link_ksettings_add_link_mode(ks, lp_advertising, in ice_get_settings_link_up()
2289 ethtool_link_ksettings_add_link_mode(ks, lp_advertising, in ice_get_settings_link_up()
2294 ethtool_link_ksettings_del_link_mode(ks, lp_advertising, Pause); in ice_get_settings_link_up()
2295 ethtool_link_ksettings_del_link_mode(ks, lp_advertising, in ice_get_settings_link_up()
2303 * @ks: ethtool ksettings to fill in
2309 ice_get_settings_link_down(struct ethtool_link_ksettings *ks, in ice_get_settings_link_down() argument
2315 ice_phy_type_to_ethtool(netdev, ks); in ice_get_settings_link_down()
2318 ks->base.speed = SPEED_UNKNOWN; in ice_get_settings_link_down()
2319 ks->base.duplex = DUPLEX_UNKNOWN; in ice_get_settings_link_down()
2325 * @ks: ethtool ksettings
2331 struct ethtool_link_ksettings *ks) in ice_get_link_ksettings() argument
2339 ethtool_link_ksettings_zero_link_mode(ks, supported); in ice_get_link_ksettings()
2340 ethtool_link_ksettings_zero_link_mode(ks, advertising); in ice_get_link_ksettings()
2341 ethtool_link_ksettings_zero_link_mode(ks, lp_advertising); in ice_get_link_ksettings()
2346 ice_get_settings_link_up(ks, netdev); in ice_get_link_ksettings()
2348 ice_get_settings_link_down(ks, netdev); in ice_get_link_ksettings()
2351 ks->base.autoneg = (hw_link_info->an_info & ICE_AQ_AN_COMPLETED) ? in ice_get_link_ksettings()
2357 ethtool_link_ksettings_add_link_mode(ks, supported, FIBRE); in ice_get_link_ksettings()
2358 ks->base.port = PORT_FIBRE; in ice_get_link_ksettings()
2361 ethtool_link_ksettings_add_link_mode(ks, supported, TP); in ice_get_link_ksettings()
2362 ethtool_link_ksettings_add_link_mode(ks, advertising, TP); in ice_get_link_ksettings()
2363 ks->base.port = PORT_TP; in ice_get_link_ksettings()
2366 ethtool_link_ksettings_add_link_mode(ks, supported, Backplane); in ice_get_link_ksettings()
2367 ethtool_link_ksettings_add_link_mode(ks, advertising, in ice_get_link_ksettings()
2369 ks->base.port = PORT_NONE; in ice_get_link_ksettings()
2372 ethtool_link_ksettings_add_link_mode(ks, supported, FIBRE); in ice_get_link_ksettings()
2373 ethtool_link_ksettings_add_link_mode(ks, advertising, FIBRE); in ice_get_link_ksettings()
2374 ks->base.port = PORT_DA; in ice_get_link_ksettings()
2377 ks->base.port = PORT_OTHER; in ice_get_link_ksettings()
2382 ethtool_link_ksettings_add_link_mode(ks, supported, Pause); in ice_get_link_ksettings()
2396 ethtool_link_ksettings_add_link_mode(ks, advertising, Pause); in ice_get_link_ksettings()
2397 ethtool_link_ksettings_add_link_mode(ks, advertising, in ice_get_link_ksettings()
2400 ethtool_link_ksettings_add_link_mode(ks, advertising, in ice_get_link_ksettings()
2403 ethtool_link_ksettings_add_link_mode(ks, advertising, Pause); in ice_get_link_ksettings()
2404 ethtool_link_ksettings_add_link_mode(ks, advertising, in ice_get_link_ksettings()
2407 ethtool_link_ksettings_del_link_mode(ks, advertising, Pause); in ice_get_link_ksettings()
2408 ethtool_link_ksettings_del_link_mode(ks, advertising, in ice_get_link_ksettings()
2413 ethtool_link_ksettings_add_link_mode(ks, advertising, FEC_NONE); in ice_get_link_ksettings()
2417 ethtool_link_ksettings_add_link_mode(ks, advertising, in ice_get_link_ksettings()
2421 ethtool_link_ksettings_add_link_mode(ks, advertising, FEC_RS); in ice_get_link_ksettings()
2429 ethtool_link_ksettings_add_link_mode(ks, supported, FEC_NONE); in ice_get_link_ksettings()
2433 ethtool_link_ksettings_add_link_mode(ks, supported, FEC_BASER); in ice_get_link_ksettings()
2435 ethtool_link_ksettings_add_link_mode(ks, supported, FEC_RS); in ice_get_link_ksettings()
2439 ethtool_link_ksettings_add_link_mode(ks, supported, Autoneg); in ice_get_link_ksettings()
2440 ethtool_link_ksettings_add_link_mode(ks, advertising, Autoneg); in ice_get_link_ksettings()
2499 * @ks: ethtool ksettings
2502 ice_ksettings_find_adv_link_speed(const struct ethtool_link_ksettings *ks) in ice_ksettings_find_adv_link_speed() argument
2509 if (linkmode_intersects(ks->link_modes.advertising, map->caps)) in ice_ksettings_find_adv_link_speed()
2519 * @ks: ethtool_link_ksettings
2528 ice_setup_autoneg(struct ice_port_info *p, struct ethtool_link_ksettings *ks, in ice_setup_autoneg() argument
2542 if (!ethtool_link_ksettings_test_link_mode(ks, in ice_setup_autoneg()
2559 if (ethtool_link_ksettings_test_link_mode(ks, in ice_setup_autoneg()
2578 * @ks: ethtool link ksettings struct
2584 ice_set_phy_type_from_speed(const struct ethtool_link_ksettings *ks, in ice_set_phy_type_from_speed() argument
2594 if (ethtool_link_ksettings_test_link_mode(ks, advertising, in ice_set_phy_type_from_speed()
2599 if (ethtool_link_ksettings_test_link_mode(ks, advertising, in ice_set_phy_type_from_speed()
2603 if (ethtool_link_ksettings_test_link_mode(ks, advertising, in ice_set_phy_type_from_speed()
2614 * @ks: ethtool ksettings
2620 const struct ethtool_link_ksettings *ks) in ice_set_link_ksettings() argument
2624 struct ethtool_link_ksettings copy_ks = *ks; in ice_set_link_ksettings()
2732 adv_link_speed = ice_ksettings_find_adv_link_speed(ks); in ice_set_link_ksettings()
2742 ice_set_phy_type_from_speed(ks, &phy_type_low, &phy_type_high, in ice_set_link_ksettings()