Lines Matching defs:config
50 struct phylink_config *config;
93 if ((pl)->config->type == PHYLINK_NETDEV) \
95 else if ((pl)->config->type == PHYLINK_DEV) \
108 if ((pl)->config->type == PHYLINK_NETDEV) \
110 else if ((pl)->config->type == PHYLINK_DEV) \
431 * @config: pointer to a &struct phylink_config
435 * Any further motifications of config.mac_capabilities will override this.
437 void phylink_limit_mac_speed(struct phylink_config *config, u32 max_speed)
443 config->mac_capabilities &= ~phylink_caps_params[i].mask;
641 * @config: a pointer to a &struct phylink_config.
648 void phylink_generic_validate(struct phylink_config *config,
652 phylink_validate_mask_caps(supported, state, config->mac_capabilities);
665 pcs = pl->mac_ops->mac_select_pcs(pl->config, state->interface);
700 pl->mac_ops->validate(pl->config, supported, state);
702 phylink_generic_validate(pl->config, supported, state);
739 const unsigned long *interfaces = pl->config->supported_interfaces;
875 pl->config->ovr_an_inband) {
1107 pl->mac_ops->mac_config(pl->config, pl->cur_link_an_mode, &st);
1128 phylink_dbg(pl, "major config %s\n", phy_modes(state->interface));
1135 pcs = pl->mac_ops->mac_select_pcs(pl->config, state->interface);
1149 err = pl->mac_ops->mac_prepare(pl->config, pl->cur_link_an_mode,
1199 err = pl->mac_ops->mac_finish(pl->config, pl->cur_link_an_mode,
1292 if (pl->config->get_fixed_state)
1293 pl->config->get_fixed_state(pl->config, state);
1386 pl->mac_ops->mac_link_up(pl->config, pl->phydev, pl->cur_link_an_mode,
1406 pl->mac_ops->mac_link_down(pl->config, pl->cur_link_an_mode,
1589 * @config: a pointer to the target &struct phylink_config
1603 struct phylink *phylink_create(struct phylink_config *config,
1613 if (phy_interface_empty(config->supported_interfaces)) {
1614 dev_err(config->dev,
1620 mac_ops->mac_select_pcs(config, PHY_INTERFACE_MODE_NA) !=
1631 pl->config = config;
1632 if (config->type == PHYLINK_NETDEV) {
1633 pl->netdev = to_net_dev(config->dev);
1635 } else if (config->type == PHYLINK_DEV) {
1636 pl->dev = config->dev;
1760 struct phylink_link_state config;
1774 memset(&config, 0, sizeof(config));
1776 linkmode_copy(config.advertising, phy->advertising);
1781 config.rate_matching = phy_get_rate_matching(phy, interface);
1794 if (phy->is_c45 && config.rate_matching == RATE_MATCH_NONE &&
1798 config.interface = PHY_INTERFACE_MODE_NA;
1800 config.interface = interface;
1802 ret = phylink_validate(pl, supported, &config);
1805 phy_modes(config.interface),
1807 __ETHTOOL_LINK_MODE_MASK_NBITS, config.advertising,
1830 linkmode_copy(pl->link_config.advertising, config.advertising);
1833 linkmode_copy(phy->advertising, config.advertising);
1846 if (pl->config->mac_managed_pm)
2113 poll |= pl->config->poll_fixed_state;
2372 struct phylink_link_state config;
2405 config = pl->link_config;
2407 linkmode_and(config.advertising, kset->link_modes.advertising,
2431 config.speed = s->speed;
2432 config.duplex = s->duplex;
2441 if (!linkmode_equal(config.advertising,
2447 config.speed = SPEED_UNKNOWN;
2448 config.duplex = DUPLEX_UNKNOWN;
2458 linkmode_mod_bit(ETHTOOL_LINK_MODE_Autoneg_BIT, config.advertising,
2466 config.interface = sfp_select_interface(pl->sfp_bus,
2467 config.advertising);
2468 if (config.interface == PHY_INTERFACE_MODE_NA) {
2472 config.advertising);
2478 if (phylink_validate(pl, support, &config)) {
2481 phy_modes(config.interface),
2488 if (phylink_validate(pl, support, &config))
2494 config.advertising) &&
2495 phylink_is_empty_linkmode(config.advertising))
2499 pl->link_config.speed = config.speed;
2500 pl->link_config.duplex = config.duplex;
2502 if (pl->link_config.interface != config.interface) {
2511 phylink_major_config(pl, false, &config);
2512 pl->link_config.interface = config.interface;
2513 linkmode_copy(pl->link_config.advertising, config.advertising);
2515 config.advertising)) {
2516 linkmode_copy(pl->link_config.advertising, config.advertising);
2574 struct phylink_link_state *config = &pl->link_config;
2613 linkmode_set_pause(config->advertising, pause->tx_pause,
2616 manual_changed = (config->pause ^ pause_state) & MLO_PAUSE_AN ||
2618 (config->pause ^ pause_state) & MLO_PAUSE_TXRX_MASK);
2620 config->pause = pause_state;
3094 struct phylink_link_state config;
3100 memset(&config, 0, sizeof(config));
3101 linkmode_copy(config.advertising, phy->advertising);
3102 config.interface = PHY_INTERFACE_MODE_NA;
3103 config.speed = SPEED_UNKNOWN;
3104 config.duplex = DUPLEX_UNKNOWN;
3105 config.pause = MLO_PAUSE_AN;
3108 ret = phylink_validate(pl, support, &config);
3116 iface = sfp_select_interface(pl->sfp_bus, config.advertising);
3120 __ETHTOOL_LINK_MODE_MASK_NBITS, config.advertising);
3124 config.interface = iface;
3126 ret = phylink_validate(pl, support1, &config);
3131 phy_modes(config.interface),
3139 phylink_sfp_set_config(pl, mode, support, &config);
3148 struct phylink_link_state config;
3154 pl->config->supported_interfaces,
3161 phy_interface_and(interfaces, pl->config->supported_interfaces,
3168 memset(&config, 0, sizeof(config));
3170 linkmode_copy(config.advertising, pl->sfp_support);
3171 config.speed = SPEED_UNKNOWN;
3172 config.duplex = DUPLEX_UNKNOWN;
3173 config.pause = MLO_PAUSE_AN;
3178 ret = phylink_validate_mask(pl, pl->sfp_support, &config, interfaces);
3194 config.interface = interface;
3197 ret = phylink_validate(pl, support, &config);
3207 phylink_sfp_set_config(pl, MLO_AN_INBAND, pl->sfp_support, &config);
3310 pl->config->supported_interfaces);
3575 * Read the MAC PCS state from the MII device configured in @config and