Commit 32d83db3 authored by Vadim Fedorenko's avatar Vadim Fedorenko Committed by Jakub Kicinski
Browse files

net: phy: micrel: add HW timestamp configuration reporting



The driver stores HW timestamping configuration and can technically
report it. Add callback to do it.

Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
Reviewed-by: default avatarKory Maincent <kory.maincent@bootlin.com>
Signed-off-by: default avatarVadim Fedorenko <vadim.fedorenko@linux.dev>
Link: https://patch.msgid.link/20260106160723.3925872-3-vadim.fedorenko@linux.dev


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 88c7ed2f
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -3147,6 +3147,18 @@ static void lan8814_flush_fifo(struct phy_device *phydev, bool egress)
	lanphy_read_page_reg(phydev, LAN8814_PAGE_PORT_REGS, PTP_TSU_INT_STS);
}

static int lan8814_hwtstamp_get(struct mii_timestamper *mii_ts,
				struct kernel_hwtstamp_config *config)
{
	struct kszphy_ptp_priv *ptp_priv =
			  container_of(mii_ts, struct kszphy_ptp_priv, mii_ts);

	config->tx_type = ptp_priv->hwts_tx_type;
	config->rx_filter = ptp_priv->rx_filter;

	return 0;
}

static int lan8814_hwtstamp_set(struct mii_timestamper *mii_ts,
				struct kernel_hwtstamp_config *config,
				struct netlink_ext_ack *extack)
@@ -4399,6 +4411,7 @@ static void lan8814_ptp_init(struct phy_device *phydev)
	ptp_priv->mii_ts.rxtstamp = lan8814_rxtstamp;
	ptp_priv->mii_ts.txtstamp = lan8814_txtstamp;
	ptp_priv->mii_ts.hwtstamp_set = lan8814_hwtstamp_set;
	ptp_priv->mii_ts.hwtstamp_get = lan8814_hwtstamp_get;
	ptp_priv->mii_ts.ts_info  = lan8814_ts_info;

	phydev->mii_ts = &ptp_priv->mii_ts;
@@ -5943,6 +5956,7 @@ static int lan8841_probe(struct phy_device *phydev)
	ptp_priv->mii_ts.rxtstamp = lan8841_rxtstamp;
	ptp_priv->mii_ts.txtstamp = lan8814_txtstamp;
	ptp_priv->mii_ts.hwtstamp_set = lan8841_hwtstamp_set;
	ptp_priv->mii_ts.hwtstamp_get = lan8814_hwtstamp_get;
	ptp_priv->mii_ts.ts_info = lan8841_ts_info;

	phydev->mii_ts = &ptp_priv->mii_ts;