Lines Matching defs:link_config
60 struct phylink_link_state link_config;
672 pl->link_config.speed = speed;
673 pl->link_config.duplex = DUPLEX_HALF;
676 pl->link_config.duplex = DUPLEX_FULL;
683 pl->link_config.lp_advertising);
686 pl->link_config.lp_advertising);
717 pl->link_config.duplex = prop[1] ?
719 pl->link_config.speed = prop[2];
722 pl->link_config.lp_advertising);
725 pl->link_config.lp_advertising);
729 if (pl->link_config.speed > SPEED_1000 &&
730 pl->link_config.duplex != DUPLEX_FULL)
732 pl->link_config.speed);
737 linkmode_copy(pl->link_config.advertising, pl->supported);
738 phylink_validate(pl, pl->supported, &pl->link_config);
740 c = phy_caps_lookup(pl->link_config.speed, pl->link_config.duplex,
754 linkmode_or(pl->link_config.lp_advertising,
755 pl->link_config.lp_advertising, match);
758 pl->link_config.duplex == DUPLEX_FULL ? "full" : "half",
759 pl->link_config.speed);
762 linkmode_and(pl->link_config.advertising, pl->link_config.advertising,
765 pl->link_config.link = 1;
766 pl->link_config.an_complete = 1;
804 switch (pl->link_config.interface) {
827 caps = phylink_get_capabilities(pl->link_config.interface, caps,
835 phy_modes(pl->link_config.interface));
839 linkmode_copy(pl->link_config.advertising, pl->supported);
841 if (phylink_validate(pl, pl->supported, &pl->link_config)) {
860 if (!(pl->link_config.pause & MLO_PAUSE_AN))
861 state->pause = pl->link_config.pause;
1024 pl->link_config.advertising) &&
1025 phy_interface_mode_is_8023z(pl->link_config.interface) &&
1317 !!(pl->link_config.pause & MLO_PAUSE_AN));
1373 phy_modes(pl->link_config.interface),
1374 __ETHTOOL_LINK_MODE_MASK_NBITS, pl->link_config.advertising,
1375 pl->link_config.pause);
1378 phylink_pcs_neg_mode(pl, pl->pcs, pl->link_config.interface,
1379 pl->link_config.advertising);
1385 ret = phylink_pcs_config(pl->pcs, pl->pcs_neg_mode, &pl->link_config,
1386 !!(pl->link_config.pause & MLO_PAUSE_AN));
1402 linkmode_copy(state->advertising, pl->link_config.advertising);
1404 state->interface = pl->link_config.interface;
1405 state->rate_matching = pl->link_config.rate_matching;
1415 state->speed = pl->link_config.speed;
1416 state->duplex = pl->link_config.duplex;
1417 state->pause = pl->link_config.pause;
1433 *state = pl->link_config;
1458 link_state = pl->link_config;
1687 if (link_state.interface != pl->link_config.interface) {
1696 pl->link_config.interface = link_state.interface;
1805 adv = pl->link_config.advertising;
1809 pl->link_config.speed = state->speed;
1810 pl->link_config.duplex = state->duplex;
1811 pl->link_config.link = 1;
1812 pl->link_config.an_complete = 1;
1887 pl->link_config.interface = iface;
1888 pl->link_config.pause = MLO_PAUSE_AN;
1889 pl->link_config.speed = SPEED_UNKNOWN;
1890 pl->link_config.duplex = DUPLEX_UNKNOWN;
1897 linkmode_copy(pl->link_config.advertising, pl->supported);
1898 phylink_validate(pl, pl->supported, &pl->link_config);
2127 linkmode_copy(pl->link_config.advertising, config.advertising);
2234 pl->link_config.interface = pl->link_interface;
2241 ret = phylink_bringup_phy(pl, phy, pl->link_config.interface);
2309 pl->link_config.interface = pl->link_interface;
2321 ret = phylink_bringup_phy(pl, phy_dev, pl->link_config.interface);
2429 phy_modes(pl->link_config.interface));
2988 * to update the pl->link_config settings:
2991 * - link_config.interface will be updated by the PHY calling
2999 * link_config.{speed,duplex,an_enabled,pause} are not used.
3000 * - the only possible use would be link_config.advertising
3008 config = pl->link_config;
3028 if (c->speed != pl->link_config.speed ||
3029 c->duplex != pl->link_config.duplex)
3045 pl->link_config.advertising))
3110 pl->link_config.speed = config.speed;
3111 pl->link_config.duplex = config.duplex;
3113 if (pl->link_config.interface != config.interface) {
3123 pl->link_config.interface = config.interface;
3124 linkmode_copy(pl->link_config.advertising, config.advertising);
3125 } else if (!linkmode_equal(pl->link_config.advertising,
3127 linkmode_copy(pl->link_config.advertising, config.advertising);
3171 pause->autoneg = !!(pl->link_config.pause & MLO_PAUSE_AN);
3172 pause->rx_pause = !!(pl->link_config.pause & MLO_PAUSE_RX);
3173 pause->tx_pause = !!(pl->link_config.pause & MLO_PAUSE_TX);
3185 struct phylink_link_state *config = &pl->link_config;
3672 if (!linkmode_equal(pl->link_config.advertising, state->advertising)) {
3673 linkmode_copy(pl->link_config.advertising, state->advertising);
3678 pl->link_config.interface != state->interface) {
3680 pl->link_config.interface = state->interface;