#include <linux/ethtool_netlink.h>
#include <linux/net_tstamp.h>
#include <linux/phy.h>
#include <linux/rtnetlink.h>
#include <linux/ptp_clock_kernel.h>
#include "common.h"
const char netdev_features_strings[NETDEV_FEATURE_COUNT][ETH_GSTRING_LEN] = …;
const char
rss_hash_func_strings[ETH_RSS_HASH_FUNCS_COUNT][ETH_GSTRING_LEN] = …;
const char
tunable_strings[__ETHTOOL_TUNABLE_COUNT][ETH_GSTRING_LEN] = …;
const char
phy_tunable_strings[__ETHTOOL_PHY_TUNABLE_COUNT][ETH_GSTRING_LEN] = …;
#define __LINK_MODE_NAME(speed, type, duplex) …
#define __DEFINE_LINK_MODE_NAME(speed, type, duplex) …
#define __DEFINE_SPECIAL_MODE_NAME(_mode, _name) …
const char link_mode_names[][ETH_GSTRING_LEN] = …;
static_assert(…);
#define __LINK_MODE_LANES_CR …
#define __LINK_MODE_LANES_CR2 …
#define __LINK_MODE_LANES_CR4 …
#define __LINK_MODE_LANES_CR8 …
#define __LINK_MODE_LANES_DR …
#define __LINK_MODE_LANES_DR2 …
#define __LINK_MODE_LANES_DR4 …
#define __LINK_MODE_LANES_DR8 …
#define __LINK_MODE_LANES_KR …
#define __LINK_MODE_LANES_KR2 …
#define __LINK_MODE_LANES_KR4 …
#define __LINK_MODE_LANES_KR8 …
#define __LINK_MODE_LANES_SR …
#define __LINK_MODE_LANES_SR2 …
#define __LINK_MODE_LANES_SR4 …
#define __LINK_MODE_LANES_SR8 …
#define __LINK_MODE_LANES_ER …
#define __LINK_MODE_LANES_KX …
#define __LINK_MODE_LANES_KX4 …
#define __LINK_MODE_LANES_LR …
#define __LINK_MODE_LANES_LR4 …
#define __LINK_MODE_LANES_LR4_ER4 …
#define __LINK_MODE_LANES_LR_ER_FR …
#define __LINK_MODE_LANES_LR2_ER2_FR2 …
#define __LINK_MODE_LANES_LR4_ER4_FR4 …
#define __LINK_MODE_LANES_LR8_ER8_FR8 …
#define __LINK_MODE_LANES_LRM …
#define __LINK_MODE_LANES_MLD2 …
#define __LINK_MODE_LANES_T …
#define __LINK_MODE_LANES_T1 …
#define __LINK_MODE_LANES_X …
#define __LINK_MODE_LANES_FX …
#define __LINK_MODE_LANES_T1L …
#define __LINK_MODE_LANES_T1S …
#define __LINK_MODE_LANES_T1S_P2MP …
#define __LINK_MODE_LANES_VR8 …
#define __LINK_MODE_LANES_DR8_2 …
#define __LINK_MODE_LANES_T1BRR …
#define __DEFINE_LINK_MODE_PARAMS(_speed, _type, _duplex) …
#define __DUPLEX_Half …
#define __DUPLEX_Full …
#define __DEFINE_SPECIAL_MODE_PARAMS(_mode) …
const struct link_mode_info link_mode_params[] = …;
static_assert(…);
const char netif_msg_class_names[][ETH_GSTRING_LEN] = …;
static_assert(…);
const char wol_mode_names[][ETH_GSTRING_LEN] = …;
static_assert(…);
const char sof_timestamping_names[][ETH_GSTRING_LEN] = …;
static_assert(…);
const char ts_tx_type_names[][ETH_GSTRING_LEN] = …;
static_assert(…);
const char ts_rx_filter_names[][ETH_GSTRING_LEN] = …;
static_assert(…);
const char udp_tunnel_type_names[][ETH_GSTRING_LEN] = …;
static_assert(…);
bool
convert_legacy_settings_to_link_ksettings(
struct ethtool_link_ksettings *link_ksettings,
const struct ethtool_cmd *legacy_settings)
{ … }
int __ethtool_get_link(struct net_device *dev)
{ … }
static int ethtool_get_rxnfc_rule_count(struct net_device *dev)
{ … }
int ethtool_get_max_rxnfc_channel(struct net_device *dev, u64 *max)
{ … }
static u32 ethtool_get_max_rss_ctx_channel(struct net_device *dev)
{ … }
u32 ethtool_get_max_rxfh_channel(struct net_device *dev)
{ … }
int ethtool_check_ops(const struct ethtool_ops *ops)
{ … }
int __ethtool_get_ts_info(struct net_device *dev, struct kernel_ethtool_ts_info *info)
{ … }
int ethtool_get_phc_vclocks(struct net_device *dev, int **vclock_index)
{ … }
EXPORT_SYMBOL(…);
int ethtool_get_ts_info_by_layer(struct net_device *dev, struct kernel_ethtool_ts_info *info)
{ … }
EXPORT_SYMBOL(…);
const struct ethtool_phy_ops *ethtool_phy_ops;
void ethtool_set_ethtool_phy_ops(const struct ethtool_phy_ops *ops)
{ … }
EXPORT_SYMBOL_GPL(…);
void
ethtool_params_from_link_mode(struct ethtool_link_ksettings *link_ksettings,
enum ethtool_link_mode_bit_indices link_mode)
{ … }
EXPORT_SYMBOL_GPL(…);
void
ethtool_forced_speed_maps_init(struct ethtool_forced_speed_map *maps, u32 size)
{ … }
EXPORT_SYMBOL_GPL(…);
void ethtool_rxfh_context_lost(struct net_device *dev, u32 context_id)
{ … }
EXPORT_SYMBOL(…);