From: Andrew Lunn <andrew@lunn.ch>
To: Ayoub Kaanich <ayoub.kaanich@technica-engineering.de>
Cc: "Russell King" <linux@armlinux.org.uk>,
"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
"Dr. Lars Völker" <lars.voelker@technica-engineering.de>
Subject: Re: RFC: symmetric SET_MODULE_EEPROM_BY_PAGE with i2c_address for non-SFF pages
Date: Wed, 15 Jul 2026 17:58:16 +0200 [thread overview]
Message-ID: <44ec224b-3c50-4aa6-b460-d7d7df175259@lunn.ch> (raw)
In-Reply-To: <AS4PR08MB8021EAE9D0196FA87849F74DB7F82@AS4PR08MB8021.eurprd08.prod.outlook.com>
> The issue is that automotive PHYs have extra functions, not
> available in standard SFP 1000BASET/Fiber modules.
But this is not a fiber module. It is a copper module. How are you
setting the connector byte at 130? Do you have an RJ45?
SFF8024_CONNECTOR_RJ45? The other option is SFF8024_CONNECTOR_UNSPEC
and transceiver byte 134, bit 3 e1000_base_t True to mean twisted
pair.
> Namely:
>
> * 1000BASET1 PHY needs to be assigned a role (either master or slave), a standard NIC have no concept of this.
Nothing special here:
ethtool -s devname [master-slave preferred-master|preferred-slave|forced-master|forced-slave]
Standard NICs do have this concept. I cannot say if NICs using
firmware actually implement this API, but any NIC using Linux to drive
the hardware probably does, and it is a standard part of phylib, and
802.3 registers in C22 and C45. There are helpers for PHY drivers to
set the bits.
> * The PHY have multiple operational speeds, for example 100BASET1 and 1000BASET1
Again, nothing special. The PHY driver should enumerate what the
capabilities of the PHY are, there are bits defined in 802.3 for this,
so nothing special needed. From that, the MAC can decide how it
configures itself. Again, nothing special.
> In order to set those configurations, we need to send an I2C command
> to the SFP module; to inform it in which mode the user wants it to
> work (the entire config is just few bytes of data)
How are you intercepting the ethtool netlink messages at the top of
the MAC? You need to intercept the ksetting_set/get calls.
Sorry, but for Mainline, you need to follow Mainline way of doing
things.
Linux is however open source. Feel free to fork Linux, make whatever
changes you want, and ship your fork to your customers.
Andrew
prev parent reply other threads:[~2026-07-15 15:58 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-13 10:29 RFC: symmetric SET_MODULE_EEPROM_BY_PAGE with i2c_address for non-SFF pages Ayoub Kaanich
2026-07-14 19:55 ` Andrew Lunn
2026-07-15 8:09 ` Ayoub Kaanich
2026-07-15 13:05 ` Andrew Lunn
2026-07-15 13:41 ` Ayoub Kaanich
2026-07-15 14:49 ` Andrew Lunn
2026-07-15 15:20 ` Ayoub Kaanich
2026-07-15 15:58 ` Andrew Lunn [this message]
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=44ec224b-3c50-4aa6-b460-d7d7df175259@lunn.ch \
--to=andrew@lunn.ch \
--cc=ayoub.kaanich@technica-engineering.de \
--cc=lars.voelker@technica-engineering.de \
--cc=linux@armlinux.org.uk \
--cc=netdev@vger.kernel.org \
/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