bfin_mac: Support the get_ts_info ethtool method.
authorRichard Cochran <richardcochran@gmail.com>
Tue, 3 Apr 2012 22:59:20 +0000 (22:59 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 4 Apr 2012 09:28:46 +0000 (05:28 -0400)
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/adi/bfin_mac.c

index ab4daeccdf98a58eb4c5d849c77e09dd2a13b6c8..db2227835489338f34addc4876f68cf5d37e30af 100644 (file)
@@ -548,6 +548,25 @@ static int bfin_mac_ethtool_setwol(struct net_device *dev,
        return 0;
 }
 
+static int bfin_mac_ethtool_get_ts_info(struct net_device *dev,
+       struct ethtool_ts_info *info);
+{
+       info->so_timestamping =
+               SOF_TIMESTAMPING_TX_HARDWARE |
+               SOF_TIMESTAMPING_RX_HARDWARE |
+               SOF_TIMESTAMPING_SYS_HARDWARE;
+       info->phc_index = -1;
+       info->tx_types =
+               (1 << HWTSTAMP_TX_OFF) |
+               (1 << HWTSTAMP_TX_ON);
+       info->rx_filters =
+               (1 << HWTSTAMP_FILTER_NONE) |
+               (1 << HWTSTAMP_FILTER_PTP_V1_L4_EVENT) |
+               (1 << HWTSTAMP_FILTER_PTP_V2_L2_EVENT) |
+               (1 << HWTSTAMP_FILTER_PTP_V2_L4_EVENT);
+       return 0;
+}
+
 static const struct ethtool_ops bfin_mac_ethtool_ops = {
        .get_settings = bfin_mac_ethtool_getsettings,
        .set_settings = bfin_mac_ethtool_setsettings,
@@ -555,6 +574,7 @@ static const struct ethtool_ops bfin_mac_ethtool_ops = {
        .get_drvinfo = bfin_mac_ethtool_getdrvinfo,
        .get_wol = bfin_mac_ethtool_getwol,
        .set_wol = bfin_mac_ethtool_setwol,
+       .get_ts_info = bfin_mac_ethtool_get_ts_info,
 };
 
 /**************************************************************************/