From: "Maxime Chevallier" <maxime.chevallier@bootlin.com>
To: "Oleksij Rempel" <o.rempel@pengutronix.de>
Cc: "Andrew Lunn" <andrew@lunn.ch>,
"Jakub Kicinski" <kuba@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
"Eric Dumazet" <edumazet@google.com>,
"Paolo Abeni" <pabeni@redhat.com>,
"Simon Horman" <horms@kernel.org>,
"Donald Hunter" <donald.hunter@gmail.com>,
"Jonathan Corbet" <corbet@lwn.net>,
"Heiner Kallweit" <hkallweit1@gmail.com>,
"Russell King" <linux@armlinux.org.uk>,
"Kory Maincent" <kory.maincent@bootlin.com>,
"Nishanth Menon" <nm@ti.com>,
kernel@pengutronix.de, linux-kernel@vger.kernel.org,
netdev@vger.kernel.org, UNGLinuxDriver@microchip.com,
linux-doc@vger.kernel.org, "Michal Kubecek" <mkubecek@suse.cz>,
"Roan van Dijk" <roan@protonic.nl>
Subject: Re: [PATCH net-next v2 5/5] net: phy: dp83td510: add MSE interface support for 10BASE-T1L
Date: Mon, 18 Aug 2025 10:15:56 +0200 [thread overview]
Message-ID: <1df-68a2e100-1-20bf1840@149731379> (raw)
In-Reply-To: <20250815063509.743796-6-o.rempel@pengutronix.de>
Hi Oleksij,
On Friday, August 15, 2025 08:35 CEST, Oleksij Rempel <o.rempel@pengutronix.de> wrote:
> Implement get_mse_config() and get_mse_snapshot() for the DP83TD510E
> to expose its Mean Square Error (MSE) register via the new PHY MSE
> UAPI.
>
> The DP83TD510E does not document any peak MSE values; it only exposes
> a single average MSE register used internally to derive SQI. This
> implementation therefore advertises only PHY_MSE_CAP_AVG, along with
> LINK and channel-A selectors. Scaling is fixed to 0xFFFF, and the
> refresh interval/number of symbols are estimated from 10BASE-T1L
> symbol rate (7.5 MBd) and typical diagnostic intervals (~1 ms).
>
> For 10BASE-T1L deployments, SQI is a reliable indicator of link
> modulation quality once the link is established, but it does not
> indicate whether autonegotiation pulses will be correctly received
> in marginal conditions. MSE provides a direct measurement of slicer
> error rate that can be used to evaluate if autonegotiation is likely
> to succeed under a given cable length and condition. In practice,
> testing such scenarios often requires forcing a fixed-link setup to
> isolate MSE behaviour from the autonegotiation process.
>
> Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
[...]
> +static int dp83td510_get_mse_snapshot(struct phy_device *phydev, u32 channel,
> + struct phy_mse_snapshot *snapshot)
> +{
> + int ret;
> +
> + if (channel != PHY_MSE_CHANNEL_LINK &&
> + channel != PHY_MSE_CHANNEL_A)
> + return -EOPNOTSUPP;
The doc in patch 1 says :
> + * Link-wide mode:
> + * - Some PHYs only expose a link-wide aggregate MSE, or cannot map their
> + * measurement to a specific channel/pair (e.g. 100BASE-TX when MDI/MDI-X
> + * resolution is unknown). In that case, callers must use the LINK selector.
The way I understand that is that PHYs will report either channel-specific values or
link-wide values. Is that correct or are both valid ? In BaseT1 this is the same thing,
but maybe for consistency, we should report either channel values or link-wide values ?
Maxime
next prev parent reply other threads:[~2025-08-18 8:22 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-15 6:35 [PATCH net-next v2 0/5] ethtool: introduce PHY MSE diagnostics UAPI and drivers Oleksij Rempel
2025-08-15 6:35 ` [PATCH net-next v2 1/5] ethtool: introduce core UAPI and driver API for PHY MSE diagnostics Oleksij Rempel
2025-08-20 3:03 ` Andrew Lunn
2025-08-20 4:44 ` Oleksij Rempel
2025-08-15 6:35 ` [PATCH net-next v2 2/5] ethtool: netlink: add ETHTOOL_MSG_MSE_GET and wire up PHY MSE access Oleksij Rempel
2025-08-15 6:35 ` [PATCH net-next v2 3/5] ethtool: netlink: add lightweight MSE reporting to LINKSTATE_GET Oleksij Rempel
2025-08-19 2:35 ` Jakub Kicinski
2025-08-15 6:35 ` [PATCH net-next v2 4/5] net: phy: micrel: add MSE interface support for KSZ9477 family Oleksij Rempel
2025-08-15 6:35 ` [PATCH net-next v2 5/5] net: phy: dp83td510: add MSE interface support for 10BASE-T1L Oleksij Rempel
2025-08-18 8:15 ` Maxime Chevallier [this message]
2025-08-18 9:20 ` Oleksij Rempel
2025-08-20 12:11 ` Andrew Lunn
2025-08-20 12:26 ` Oleksij Rempel
2025-08-20 13:32 ` Andrew Lunn
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1df-68a2e100-1-20bf1840@149731379 \
--to=maxime.chevallier@bootlin.com \
--cc=UNGLinuxDriver@microchip.com \
--cc=andrew@lunn.ch \
--cc=corbet@lwn.net \
--cc=davem@davemloft.net \
--cc=donald.hunter@gmail.com \
--cc=edumazet@google.com \
--cc=hkallweit1@gmail.com \
--cc=horms@kernel.org \
--cc=kernel@pengutronix.de \
--cc=kory.maincent@bootlin.com \
--cc=kuba@kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=mkubecek@suse.cz \
--cc=netdev@vger.kernel.org \
--cc=nm@ti.com \
--cc=o.rempel@pengutronix.de \
--cc=pabeni@redhat.com \
--cc=roan@protonic.nl \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.