Lines Matching refs:link_config
64 struct phylink_link_state link_config;
764 pl->link_config.speed = speed;
765 pl->link_config.duplex = DUPLEX_HALF;
768 pl->link_config.duplex = DUPLEX_FULL;
775 pl->link_config.lp_advertising);
778 pl->link_config.lp_advertising);
806 pl->link_config.duplex = prop[1] ?
808 pl->link_config.speed = prop[2];
811 pl->link_config.lp_advertising);
814 pl->link_config.lp_advertising);
818 if (pl->link_config.speed > SPEED_1000 &&
819 pl->link_config.duplex != DUPLEX_FULL)
821 pl->link_config.speed);
824 linkmode_copy(pl->link_config.advertising, pl->supported);
825 phylink_validate(pl, pl->supported, &pl->link_config);
830 s = phy_lookup_setting(pl->link_config.speed, pl->link_config.duplex,
846 __set_bit(s->bit, pl->link_config.lp_advertising);
849 pl->link_config.duplex == DUPLEX_FULL ? "full" : "half",
850 pl->link_config.speed);
853 linkmode_and(pl->link_config.advertising, pl->link_config.advertising,
856 pl->link_config.link = 1;
857 pl->link_config.an_complete = 1;
889 switch (pl->link_config.interface) {
978 phy_modes(pl->link_config.interface));
982 linkmode_copy(pl->link_config.advertising, pl->supported);
984 if (phylink_validate(pl, pl->supported, &pl->link_config)) {
1003 if (!(pl->link_config.pause & MLO_PAUSE_AN))
1004 state->pause = pl->link_config.pause;
1113 pl->link_config.advertising) &&
1114 phy_interface_mode_is_8023z(pl->link_config.interface) &&
1188 !!(pl->link_config.pause & MLO_PAUSE_AN));
1231 phy_modes(pl->link_config.interface),
1232 __ETHTOOL_LINK_MODE_MASK_NBITS, pl->link_config.advertising,
1233 pl->link_config.pause);
1237 pl->link_config.interface,
1238 pl->link_config.advertising);
1248 ret = phylink_pcs_config(pl->pcs, neg_mode, &pl->link_config,
1249 !!(pl->link_config.pause & MLO_PAUSE_AN));
1262 linkmode_copy(state->advertising, pl->link_config.advertising);
1264 state->interface = pl->link_config.interface;
1265 state->rate_matching = pl->link_config.rate_matching;
1272 state->speed = pl->link_config.speed;
1273 state->duplex = pl->link_config.duplex;
1274 state->pause = pl->link_config.pause;
1291 *state = pl->link_config;
1315 link_state = pl->link_config;
1503 if (link_state.interface != pl->link_config.interface) {
1512 pl->link_config.interface = link_state.interface;
1649 pl->link_config.interface = iface;
1650 pl->link_config.pause = MLO_PAUSE_AN;
1651 pl->link_config.speed = SPEED_UNKNOWN;
1652 pl->link_config.duplex = DUPLEX_UNKNOWN;
1659 linkmode_copy(pl->link_config.advertising, pl->supported);
1660 phylink_validate(pl, pl->supported, &pl->link_config);
1721 phy_interface_mode_is_8023z(pl->link_config.interface)))
1830 linkmode_copy(pl->link_config.advertising, config.advertising);
1888 pl->link_config.interface = pl->link_interface;
1895 ret = phylink_bringup_phy(pl, phy, pl->link_config.interface);
1963 pl->link_config.interface = pl->link_interface;
1972 ret = phylink_bringup_phy(pl, phy_dev, pl->link_config.interface);
2074 phy_modes(pl->link_config.interface));
2385 * to update the pl->link_config settings:
2388 * - link_config.interface will be updated by the PHY calling
2396 * link_config.{speed,duplex,an_enabled,pause} are not used.
2397 * - the only possible use would be link_config.advertising
2405 config = pl->link_config;
2425 if (s->speed != pl->link_config.speed ||
2426 s->duplex != pl->link_config.duplex)
2442 pl->link_config.advertising))
2499 pl->link_config.speed = config.speed;
2500 pl->link_config.duplex = config.duplex;
2502 if (pl->link_config.interface != config.interface) {
2512 pl->link_config.interface = config.interface;
2513 linkmode_copy(pl->link_config.advertising, config.advertising);
2514 } else if (!linkmode_equal(pl->link_config.advertising,
2516 linkmode_copy(pl->link_config.advertising, config.advertising);
2560 pause->autoneg = !!(pl->link_config.pause & MLO_PAUSE_AN);
2561 pause->rx_pause = !!(pl->link_config.pause & MLO_PAUSE_RX);
2562 pause->tx_pause = !!(pl->link_config.pause & MLO_PAUSE_TX);
2574 struct phylink_link_state *config = &pl->link_config;
3067 if (!linkmode_equal(pl->link_config.advertising, state->advertising)) {
3068 linkmode_copy(pl->link_config.advertising, state->advertising);
3073 pl->link_config.interface != state->interface) {
3075 pl->link_config.interface = state->interface;
3317 interface = pl->link_config.interface;