Lines Matching refs:link_ksettings
372 const struct ethtool_link_ksettings *link_ksettings) in convert_link_ksettings_to_legacy_settings() argument
385 link_ksettings->link_modes.supported); in convert_link_ksettings_to_legacy_settings()
388 link_ksettings->link_modes.advertising); in convert_link_ksettings_to_legacy_settings()
391 link_ksettings->link_modes.lp_advertising); in convert_link_ksettings_to_legacy_settings()
392 ethtool_cmd_speed_set(legacy_settings, link_ksettings->base.speed); in convert_link_ksettings_to_legacy_settings()
394 = link_ksettings->base.duplex; in convert_link_ksettings_to_legacy_settings()
396 = link_ksettings->base.port; in convert_link_ksettings_to_legacy_settings()
398 = link_ksettings->base.phy_address; in convert_link_ksettings_to_legacy_settings()
400 = link_ksettings->base.autoneg; in convert_link_ksettings_to_legacy_settings()
402 = link_ksettings->base.mdio_support; in convert_link_ksettings_to_legacy_settings()
404 = link_ksettings->base.eth_tp_mdix; in convert_link_ksettings_to_legacy_settings()
406 = link_ksettings->base.eth_tp_mdix_ctrl; in convert_link_ksettings_to_legacy_settings()
408 = link_ksettings->base.transceiver; in convert_link_ksettings_to_legacy_settings()
428 struct ethtool_link_ksettings *link_ksettings) in __ethtool_get_link_ksettings() argument
435 memset(link_ksettings, 0, sizeof(*link_ksettings)); in __ethtool_get_link_ksettings()
436 return dev->ethtool_ops->get_link_ksettings(dev, link_ksettings); in __ethtool_get_link_ksettings()
515 struct ethtool_link_ksettings link_ksettings; in ethtool_get_link_ksettings() local
522 if (copy_from_user(&link_ksettings.base, useraddr, in ethtool_get_link_ksettings()
523 sizeof(link_ksettings.base))) in ethtool_get_link_ksettings()
527 != link_ksettings.base.link_mode_masks_nwords) { in ethtool_get_link_ksettings()
529 memset(&link_ksettings, 0, sizeof(link_ksettings)); in ethtool_get_link_ksettings()
530 link_ksettings.base.cmd = ETHTOOL_GLINKSETTINGS; in ethtool_get_link_ksettings()
534 link_ksettings.base.link_mode_masks_nwords in ethtool_get_link_ksettings()
540 if (copy_to_user(useraddr, &link_ksettings.base, in ethtool_get_link_ksettings()
541 sizeof(link_ksettings.base))) in ethtool_get_link_ksettings()
551 memset(&link_ksettings, 0, sizeof(link_ksettings)); in ethtool_get_link_ksettings()
552 err = dev->ethtool_ops->get_link_ksettings(dev, &link_ksettings); in ethtool_get_link_ksettings()
557 link_ksettings.base.cmd = ETHTOOL_GLINKSETTINGS; in ethtool_get_link_ksettings()
558 link_ksettings.base.link_mode_masks_nwords in ethtool_get_link_ksettings()
560 link_ksettings.base.master_slave_cfg = MASTER_SLAVE_CFG_UNSUPPORTED; in ethtool_get_link_ksettings()
561 link_ksettings.base.master_slave_state = MASTER_SLAVE_STATE_UNSUPPORTED; in ethtool_get_link_ksettings()
563 return store_link_ksettings_for_user(useraddr, &link_ksettings); in ethtool_get_link_ksettings()
571 struct ethtool_link_ksettings link_ksettings; in ethtool_set_link_ksettings() local
579 if (copy_from_user(&link_ksettings.base, useraddr, in ethtool_set_link_ksettings()
580 sizeof(link_ksettings.base))) in ethtool_set_link_ksettings()
584 != link_ksettings.base.link_mode_masks_nwords) in ethtool_set_link_ksettings()
590 err = load_link_ksettings_from_user(&link_ksettings, useraddr); in ethtool_set_link_ksettings()
596 != link_ksettings.base.link_mode_masks_nwords) in ethtool_set_link_ksettings()
599 if (link_ksettings.base.master_slave_cfg || in ethtool_set_link_ksettings()
600 link_ksettings.base.master_slave_state) in ethtool_set_link_ksettings()
603 err = dev->ethtool_ops->set_link_ksettings(dev, &link_ksettings); in ethtool_set_link_ksettings()
643 struct ethtool_link_ksettings link_ksettings; in ethtool_get_settings() local
651 memset(&link_ksettings, 0, sizeof(link_ksettings)); in ethtool_get_settings()
652 err = dev->ethtool_ops->get_link_ksettings(dev, &link_ksettings); in ethtool_get_settings()
655 convert_link_ksettings_to_legacy_settings(&cmd, &link_ksettings); in ethtool_get_settings()
676 struct ethtool_link_ksettings link_ksettings; in ethtool_set_settings() local
687 if (!convert_legacy_settings_to_link_ksettings(&link_ksettings, &cmd)) in ethtool_set_settings()
689 link_ksettings.base.link_mode_masks_nwords = in ethtool_set_settings()
691 ret = dev->ethtool_ops->set_link_ksettings(dev, &link_ksettings); in ethtool_set_settings()