diff options
author | 2025-05-08 15:47:52 +0300 | |
---|---|---|
committer | 2025-05-09 16:40:22 -0700 | |
commit | 7bf230556bfafd614b62c4242431a7a77711e99c (patch) | |
tree | 966efbf43b735b4f4219be2f89161ea92189fbef | |
parent | net: dpaa_eth: convert to ndo_hwtstamp_set() (diff) | |
download | linux-rng-7bf230556bfafd614b62c4242431a7a77711e99c.tar.xz linux-rng-7bf230556bfafd614b62c4242431a7a77711e99c.zip |
net: dpaa_eth: add ndo_hwtstamp_get() implementation
Allow SIOCGHWTSTAMP to retrieve the current timestamping settings
on DPAA1 interfaces. This reflects what has been done in
dpaa_hwtstamp_set().
Tested with hwstamp_ctl -i fm1-mac9.
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Acked-by: Madalin Bucur <madalin.bucur@oss.nxp.com>
Link: https://patch.msgid.link/20250508124753.1492742-3-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-rw-r--r-- | drivers/net/ethernet/freescale/dpaa/dpaa_eth.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c b/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c index d5458a5fb971..5b8d87a0bf82 100644 --- a/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c +++ b/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c @@ -3089,6 +3089,18 @@ static int dpaa_xdp_xmit(struct net_device *net_dev, int n, return nxmit; } +static int dpaa_hwtstamp_get(struct net_device *dev, + struct kernel_hwtstamp_config *config) +{ + struct dpaa_priv *priv = netdev_priv(dev); + + config->tx_type = priv->tx_tstamp ? HWTSTAMP_TX_ON : HWTSTAMP_TX_OFF; + config->rx_filter = priv->rx_tstamp ? HWTSTAMP_FILTER_ALL : + HWTSTAMP_FILTER_NONE; + + return 0; +} + static int dpaa_hwtstamp_set(struct net_device *dev, struct kernel_hwtstamp_config *config, struct netlink_ext_ack *extack) @@ -3154,6 +3166,7 @@ static const struct net_device_ops dpaa_ops = { .ndo_change_mtu = dpaa_change_mtu, .ndo_bpf = dpaa_xdp, .ndo_xdp_xmit = dpaa_xdp_xmit, + .ndo_hwtstamp_get = dpaa_hwtstamp_get, .ndo_hwtstamp_set = dpaa_hwtstamp_set, }; |