From: Richard Cochran Date: Tue, 3 Apr 2012 22:59:22 +0000 (+0000) Subject: ethtool: Add a common function for drivers with transmit time stamping. X-Git-Tag: v3.5-rc1~109^2~627 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=02eacbd0c405d378d2357e8e0fac5de981bd40f8;p=platform%2Fkernel%2Flinux-exynos.git ethtool: Add a common function for drivers with transmit time stamping. Currently, most drivers do not support transmit SO_TIMESTAMPING. For those that do support it, there is one appropriate response to the get_ts_info query. This patch adds a common function providing this response. Signed-off-by: Richard Cochran Reviewed-by: Ben Hutchings Signed-off-by: David S. Miller --- diff --git a/include/linux/ethtool.h b/include/linux/ethtool.h index 1769714..560a247 100644 --- a/include/linux/ethtool.h +++ b/include/linux/ethtool.h @@ -811,6 +811,7 @@ struct net_device; /* Some generic methods drivers may use in their ethtool_ops */ u32 ethtool_op_get_link(struct net_device *dev); +int ethtool_op_get_ts_info(struct net_device *dev, struct ethtool_ts_info *eti); /** * ethtool_rxfh_indir_default - get default value for RX flow hash indirection diff --git a/net/core/ethtool.c b/net/core/ethtool.c index a723b13..beacdd9 100644 --- a/net/core/ethtool.c +++ b/net/core/ethtool.c @@ -38,6 +38,17 @@ u32 ethtool_op_get_link(struct net_device *dev) } EXPORT_SYMBOL(ethtool_op_get_link); +int ethtool_op_get_ts_info(struct net_device *dev, struct ethtool_ts_info *info) +{ + info->so_timestamping = + SOF_TIMESTAMPING_TX_SOFTWARE | + SOF_TIMESTAMPING_RX_SOFTWARE | + SOF_TIMESTAMPING_SOFTWARE; + info->phc_index = -1; + return 0; +} +EXPORT_SYMBOL(ethtool_op_get_ts_info); + /* Handlers for each ethtool command */ #define ETHTOOL_DEV_FEATURE_WORDS ((NETDEV_FEATURE_COUNT + 31) / 32)