common.c (9a87ffc99ec8eb8d35eed7c4f816d75f5cc9662e) common.c (70ef7d87f62a86674c21a99341dabc175c19681a)
1// SPDX-License-Identifier: GPL-2.0-only
2
3#include <linux/ethtool_netlink.h>
4#include <linux/net_tstamp.h>
5#include <linux/phy.h>
6#include <linux/rtnetlink.h>
7#include <linux/ptp_clock_kernel.h>
8

--- 651 unchanged lines hidden (view full) ---

660 return num;
661}
662EXPORT_SYMBOL(ethtool_get_phc_vclocks);
663
664const struct ethtool_phy_ops *ethtool_phy_ops;
665
666void ethtool_set_ethtool_phy_ops(const struct ethtool_phy_ops *ops)
667{
1// SPDX-License-Identifier: GPL-2.0-only
2
3#include <linux/ethtool_netlink.h>
4#include <linux/net_tstamp.h>
5#include <linux/phy.h>
6#include <linux/rtnetlink.h>
7#include <linux/ptp_clock_kernel.h>
8

--- 651 unchanged lines hidden (view full) ---

660 return num;
661}
662EXPORT_SYMBOL(ethtool_get_phc_vclocks);
663
664const struct ethtool_phy_ops *ethtool_phy_ops;
665
666void ethtool_set_ethtool_phy_ops(const struct ethtool_phy_ops *ops)
667{
668 rtnl_lock();
668 ASSERT_RTNL();
669 ethtool_phy_ops = ops;
669 ethtool_phy_ops = ops;
670 rtnl_unlock();
671}
672EXPORT_SYMBOL_GPL(ethtool_set_ethtool_phy_ops);
673
674void
675ethtool_params_from_link_mode(struct ethtool_link_ksettings *link_ksettings,
676 enum ethtool_link_mode_bit_indices link_mode)
677{
678 const struct link_mode_info *link_info;
679
680 if (WARN_ON_ONCE(link_mode >= __ETHTOOL_LINK_MODE_MASK_NBITS))
681 return;
682
683 link_info = &link_mode_params[link_mode];
684 link_ksettings->base.speed = link_info->speed;
685 link_ksettings->lanes = link_info->lanes;
686 link_ksettings->base.duplex = link_info->duplex;
687}
688EXPORT_SYMBOL_GPL(ethtool_params_from_link_mode);
670}
671EXPORT_SYMBOL_GPL(ethtool_set_ethtool_phy_ops);
672
673void
674ethtool_params_from_link_mode(struct ethtool_link_ksettings *link_ksettings,
675 enum ethtool_link_mode_bit_indices link_mode)
676{
677 const struct link_mode_info *link_info;
678
679 if (WARN_ON_ONCE(link_mode >= __ETHTOOL_LINK_MODE_MASK_NBITS))
680 return;
681
682 link_info = &link_mode_params[link_mode];
683 link_ksettings->base.speed = link_info->speed;
684 link_ksettings->lanes = link_info->lanes;
685 link_ksettings->base.duplex = link_info->duplex;
686}
687EXPORT_SYMBOL_GPL(ethtool_params_from_link_mode);