[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZdyahVYAhPgf2Xqn@shell.armlinux.org.uk>
Date: Mon, 26 Feb 2024 14:04:53 +0000
From: "Russell King (Oracle)" <linux@...linux.org.uk>
To: Shengyu Qu <wiagn233@...look.com>
Cc: andrew@...n.ch, hkallweit1@...il.com, davem@...emloft.net,
edumazet@...gle.com, kuba@...nel.org, pabeni@...hat.com,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
stable@...r.kernel.org
Subject: Re: [PATCH v1] net: sfp: add quirks for ODI DFP-34X-2C2
On Mon, Feb 26, 2024 at 09:23:46PM +0800, Shengyu Qu wrote:
> ODI DFP-34X-2C2 is capable of 2500base-X, but incorrectly report its
> capabilities in the EEPROM.
> So use sfp_quirk_2500basex for this module to allow 2500Base-X mode.
This was previously submitted by Sergio Palumbo, and comes in two
different forms - an OEM version and non-OEM. There was extensive
discussion about this, and the result is that I'm not accepting this
quirk for this module.
The reason is that the module _defaults_ to 1000base-X and requires
manual reconfiguration by the user to operate at 2500base-X.
Unfortunately, there is no way for the kernel to know whether that
reconfiguration has occurred.
The addition of this quirk makes the kernel select 2500base-X when
the module is plugged in to a host that supports both 2500base-X
and 1000base-X, resulting in the link with the module never coming
up. (2500base-X is 1000base-X clocked 2.5x faster, and there is
nothing in the line protocol that identifies this.)
Consequently, adding this quirk makes modules in their default
configuration not link with the host, and thus be inaccessible.
Therefore, for the best user experience (in terms of having a working
module when it turns up at the doorstep) the only option is to refuse
this quirk.
Now, what I really don't like is that I had a lengthy discussion over
this with Sergio, and it seems from a mainline developer point of view
that "oh, Sergio wasn't successful in getting this merged, someone else
can have a go".
It _isn't_ the person who is the problem - it is the principle and the
confusion this will cause to users who receive modules in their default
configuration (1000base-X), and then plug them in with this quirk in
place, and the kernel selects 2500base-X resulting in no link and *no*
access to the module.
--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!
Powered by blists - more mailing lists