Lines Matching refs:link_ksettings
384 const struct ethtool_link_ksettings *link_ksettings) in convert_link_ksettings_to_legacy_settings() argument
397 link_ksettings->link_modes.supported); in convert_link_ksettings_to_legacy_settings()
400 link_ksettings->link_modes.advertising); in convert_link_ksettings_to_legacy_settings()
403 link_ksettings->link_modes.lp_advertising); in convert_link_ksettings_to_legacy_settings()
404 ethtool_cmd_speed_set(legacy_settings, link_ksettings->base.speed); in convert_link_ksettings_to_legacy_settings()
406 = link_ksettings->base.duplex; in convert_link_ksettings_to_legacy_settings()
408 = link_ksettings->base.port; in convert_link_ksettings_to_legacy_settings()
410 = link_ksettings->base.phy_address; in convert_link_ksettings_to_legacy_settings()
412 = link_ksettings->base.autoneg; in convert_link_ksettings_to_legacy_settings()
414 = link_ksettings->base.mdio_support; in convert_link_ksettings_to_legacy_settings()
416 = link_ksettings->base.eth_tp_mdix; in convert_link_ksettings_to_legacy_settings()
418 = link_ksettings->base.eth_tp_mdix_ctrl; in convert_link_ksettings_to_legacy_settings()
420 = link_ksettings->base.transceiver; in convert_link_ksettings_to_legacy_settings()
440 struct ethtool_link_ksettings *link_ksettings) in __ethtool_get_link_ksettings() argument
447 memset(link_ksettings, 0, sizeof(*link_ksettings)); in __ethtool_get_link_ksettings()
448 return dev->ethtool_ops->get_link_ksettings(dev, link_ksettings); in __ethtool_get_link_ksettings()
527 struct ethtool_link_ksettings link_ksettings; in ethtool_get_link_ksettings() local
534 if (copy_from_user(&link_ksettings.base, useraddr, in ethtool_get_link_ksettings()
535 sizeof(link_ksettings.base))) in ethtool_get_link_ksettings()
539 != link_ksettings.base.link_mode_masks_nwords) { in ethtool_get_link_ksettings()
541 memset(&link_ksettings, 0, sizeof(link_ksettings)); in ethtool_get_link_ksettings()
542 link_ksettings.base.cmd = ETHTOOL_GLINKSETTINGS; in ethtool_get_link_ksettings()
546 link_ksettings.base.link_mode_masks_nwords in ethtool_get_link_ksettings()
552 if (copy_to_user(useraddr, &link_ksettings.base, in ethtool_get_link_ksettings()
553 sizeof(link_ksettings.base))) in ethtool_get_link_ksettings()
563 memset(&link_ksettings, 0, sizeof(link_ksettings)); in ethtool_get_link_ksettings()
564 err = dev->ethtool_ops->get_link_ksettings(dev, &link_ksettings); in ethtool_get_link_ksettings()
569 link_ksettings.base.cmd = ETHTOOL_GLINKSETTINGS; in ethtool_get_link_ksettings()
570 link_ksettings.base.link_mode_masks_nwords in ethtool_get_link_ksettings()
572 link_ksettings.base.master_slave_cfg = MASTER_SLAVE_CFG_UNSUPPORTED; in ethtool_get_link_ksettings()
573 link_ksettings.base.master_slave_state = MASTER_SLAVE_STATE_UNSUPPORTED; in ethtool_get_link_ksettings()
574 link_ksettings.base.rate_matching = RATE_MATCH_NONE; in ethtool_get_link_ksettings()
576 return store_link_ksettings_for_user(useraddr, &link_ksettings); in ethtool_get_link_ksettings()
584 struct ethtool_link_ksettings link_ksettings; in ethtool_set_link_ksettings() local
592 if (copy_from_user(&link_ksettings.base, useraddr, in ethtool_set_link_ksettings()
593 sizeof(link_ksettings.base))) in ethtool_set_link_ksettings()
597 != link_ksettings.base.link_mode_masks_nwords) in ethtool_set_link_ksettings()
603 err = load_link_ksettings_from_user(&link_ksettings, useraddr); in ethtool_set_link_ksettings()
609 != link_ksettings.base.link_mode_masks_nwords) in ethtool_set_link_ksettings()
612 if (link_ksettings.base.master_slave_cfg || in ethtool_set_link_ksettings()
613 link_ksettings.base.master_slave_state) in ethtool_set_link_ksettings()
616 err = dev->ethtool_ops->set_link_ksettings(dev, &link_ksettings); in ethtool_set_link_ksettings()
656 struct ethtool_link_ksettings link_ksettings; in ethtool_get_settings() local
664 memset(&link_ksettings, 0, sizeof(link_ksettings)); in ethtool_get_settings()
665 err = dev->ethtool_ops->get_link_ksettings(dev, &link_ksettings); in ethtool_get_settings()
668 convert_link_ksettings_to_legacy_settings(&cmd, &link_ksettings); in ethtool_get_settings()
689 struct ethtool_link_ksettings link_ksettings; in ethtool_set_settings() local
700 if (!convert_legacy_settings_to_link_ksettings(&link_ksettings, &cmd)) in ethtool_set_settings()
702 link_ksettings.base.link_mode_masks_nwords = in ethtool_set_settings()
704 ret = dev->ethtool_ops->set_link_ksettings(dev, &link_ksettings); in ethtool_set_settings()