From: Shubham Das <shubham.das@intel.com>
To: netdev@vger.kernel.org, andrew@lunn.ch,
maxime.chevallier@bootlin.com, alexander.duyck@gmail.com,
lee@trager.us
Cc: siddaraju.dh@intel.com, balaji.chintalapalle@intel.com,
dasshubhamk@gmail.com, magnus.k.lindberg@ericsson.com,
jonas.wirandi@ericsson.com, Shubham Das <shubham.das@intel.com>
Subject: [RFC net-next 0/2] ethtool: add interface caps and PHY tests
Date: Wed, 30 Sep 2026 08:21:46 -0500 [thread overview]
Message-ID: <20260930132151.932792-1-shubham.das@intel.com> (raw)
This series adds two new ethtool netlink commands:
1. intf-caps-get: Discovers the functional block layout of a network
interface. Each block represents a hardware point (MAC/PHY/MODULE) at
a specific 802.3 sublayer (RS/PCS/FEC/PMA/PMD) with its supported
capabilities (loopback, test patterns, BERT, error injection).
2. Add ETHTOOL_MSG_PHY_TEST_GET and ETHTOOL_MSG_PHY_TEST_SET for per-block,
per-lane PHY testing using test patterns, BERT (Bit Error Ratio Test),
and error injection. The block_id from intf-caps-get identifies which
hardware point to test.
The block model uses:
- component: identifies the hardware entity (MAC, PHY, or module).
- sublayer: identifies the 802.3 sublayer (RS, PCS, FEC, PMA, or PMD).
- instance: identifies multiple instances of the same component, such as
internal and external PHYs.
- depth: identifies the host-side or line-side block within the same
sublayer.
Prior discussion on this proposal:
https://lore.kernel.org/netdev/SN7PR11MB810923BBDEC398E860099150FF1B2
Shubham Das (2):
ethtool: add interface capabilities query (intf-caps-get)
ethtool: add PHY test framework (phy-test-get, phy-test-set)
Documentation/netlink/specs/ethtool.yaml | 211 ++++++++++++++++++
include/linux/ethtool.h | 94 ++++++++
include/linux/phy.h | 16 ++
include/linux/phylink.h | 7 +
.../uapi/linux/ethtool_netlink_generated.h | 106 +++++++++
net/ethtool/Makefile | 2 +-
net/ethtool/intf_caps.c | 130 +++++++++++
net/ethtool/netlink.c | 24 ++
net/ethtool/netlink.h | 10 +
net/ethtool/phytest.c | 183 +++++++++++++++
10 files changed, 782 insertions(+), 1 deletion(-)
create mode 100644 net/ethtool/intf_caps.c
create mode 100644 net/ethtool/phytest.c
base-commit: 001b5d347d8ba39b2dccaefcc57967b18caec8fe
--
2.25.1
next reply other threads:[~2026-09-30 13:22 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-30 13:21 Shubham Das [this message]
2026-09-30 13:21 ` [RFC net-next 1/2] ethtool: add interface capabilities query (intf-caps-get) Shubham Das
2026-09-30 13:53 ` Andrew Lunn
2026-10-05 4:10 ` Das, Shubham
2026-09-30 13:21 ` [RFC net-next 2/2] ethtool: add PHY test framework Shubham Das
2026-09-30 13:21 ` [RFC ethtool 0/2] add interface caps and PHY tests Shubham Das
2026-09-30 13:21 ` [RFC ethtool 1/2] ethtool: Add interface capability get support Shubham Das
2026-09-30 13:21 ` [RFC ethtool 2/2] ethtool: Add PHY test and BERT support Shubham Das
2026-09-30 13:58 ` [RFC net-next 0/2] ethtool: add interface caps and PHY tests Andrew Lunn
2026-10-05 4:13 ` Das, Shubham
2026-10-05 13:43 ` 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=20260930132151.932792-1-shubham.das@intel.com \
--to=shubham.das@intel.com \
--cc=alexander.duyck@gmail.com \
--cc=andrew@lunn.ch \
--cc=balaji.chintalapalle@intel.com \
--cc=dasshubhamk@gmail.com \
--cc=jonas.wirandi@ericsson.com \
--cc=lee@trager.us \
--cc=magnus.k.lindberg@ericsson.com \
--cc=maxime.chevallier@bootlin.com \
--cc=netdev@vger.kernel.org \
--cc=siddaraju.dh@intel.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox