net: ethtool: ts: Update GET_TS to reply the current selected timestamp

As the default selected timestamp API change we have to change also the
timestamp return by ethtool. This patch return now the current selected
timestamp.

Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Kory Maincent 2023-11-14 12:28:42 +01:00 committed by David S. Miller
parent 0f7f463d48
commit 091fab1228
1 changed files with 1 additions and 17 deletions

View File

@ -31,29 +31,13 @@ static int ts_prepare_data(const struct ethnl_req_info *req_base,
{
struct ts_reply_data *data = TS_REPDATA(reply_base);
struct net_device *dev = reply_base->dev;
const struct ethtool_ops *ops = dev->ethtool_ops;
int ret;
ret = ethnl_ops_begin(dev);
if (ret < 0)
return ret;
if (phy_has_tsinfo(dev->phydev)) {
data->ts_layer = PHY_TIMESTAMPING;
} else if (ops->get_ts_info) {
struct ethtool_ts_info ts_info = {0};
ops->get_ts_info(dev, &ts_info);
if (ts_info.so_timestamping &
SOF_TIMESTAMPING_HARDWARE_MASK)
data->ts_layer = MAC_TIMESTAMPING;
if (ts_info.so_timestamping &
SOF_TIMESTAMPING_SOFTWARE_MASK)
data->ts_layer = SOFTWARE_TIMESTAMPING;
} else {
data->ts_layer = NO_TIMESTAMPING;
}
data->ts_layer = dev->ts_layer;
ethnl_ops_complete(dev);