netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* How to operate 10Gbit SFP+ module if driver doesn't support SFP+?
@ 2020-04-24 16:41 Tanjeff Moos
  2020-04-24 18:56 ` Andrew Lunn
  0 siblings, 1 reply; 2+ messages in thread
From: Tanjeff Moos @ 2020-04-24 16:41 UTC (permalink / raw)
  To: Networking

Hello netdev list,

I hope that I'm at the right mailinglist for my question. If not, let me
know.


Abstract
--------

I'm trying to get a 10GBASE-SR SFP+ module running on a self-made board.
The MAC driver doesn't support phylink (i.e. no I²C accesses to the SFP+
registers), therefore I want to use PHY-less mode. On the other hand,
the "fixed-link" mode supports only up to 1 Gbit. The "in-band-status"
mode is said to not work with my setup. Thus I'm running out of options.
I ask you if there are further options to get things running.


About the hardware
------------------

My company built an access point containing an NXP QorIQ T1023 Soc. This
SoC includes a MAC which is connected to an SFP+ cage. We use XFI for
the connection between MAC and SFP+. In addition, the SFP+ module is
connected to the SoC via I²C to access its registers.


About the software
------------------

I am running OpenWRT with a Linux 4.14.137 kernel. There are patches on
that kernel (mostly from the OpenWRT project, some by us).


Details about the problem
-------------------------

For the MAC, I use the DPAA driver. This driver uses the kernels phylib
(a.k.a. PHY Abstraction Layer) to access its PHY. However, phylib
supports only MDIO-connected PHYs, not I²C connected devices. The kernel
also provides phylink which can access I²C devices *and* MDIO devices
(according to my understanding), but the DPAA driver does not support
phylink. Therefore, the SFP+ Module will not work in a "normal" way with
the DPAA driver.

Instead, I try to use PHY-less mode by adding the "fixed-link" keyword
to my DTS file. However, I can only configure up to 1 Gbit, but I need
10 Gbit.

There is an "in-band-status" keyword for the DTS file, but I didn't
understand what it does. An NXP supporter told me that this will not
work with XFI.

To summarize, I considered the following options:

- Operating SFP+ "normally", register access over I²C --> Not supported
  by MAC driver
- PHY-less operation with "fixed-link" --> does not support 10G
- PHY-less operation with "in-band-status" --> said to be no option,
  but I don't understand why


What I tried so far
--------------------

- Checked XFI link: I read the MACs registers, and it says the XFI link
  is up. I didn't find an equivalent register on the SFP+ side. The
  Ethernet switch (this is my link partner for the fiber link) says the
  link is up (LED is on).
- Reading SFP+ registers: I can actually read the registers of the SFP+
  module. I tried that on the U-boot commandline, just to test the I²C
  connection.
- Hacking the phylib: I tried to add 10G mode to the "fixed-link" mode
  and had limited success. My MAC can now receive packets but not send.
  I believe that the MAC still thinks the link were down. I'm currently
  working in that area.


My Question
-----------

- Is there a method to operate the SFP+ module in PHY-less mode which
  I'm unaware of?



Kind regards, Tanjeff


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: How to operate 10Gbit SFP+ module if driver doesn't support SFP+?
  2020-04-24 16:41 How to operate 10Gbit SFP+ module if driver doesn't support SFP+? Tanjeff Moos
@ 2020-04-24 18:56 ` Andrew Lunn
  0 siblings, 0 replies; 2+ messages in thread
From: Andrew Lunn @ 2020-04-24 18:56 UTC (permalink / raw)
  To: Tanjeff Moos; +Cc: Networking

On Fri, Apr 24, 2020 at 06:41:18PM +0200, Tanjeff Moos wrote:
> Hello netdev list,
> 
> I hope that I'm at the right mailinglist for my question. If not, let me
> know.
> 
> 
> Abstract
> --------
> 
> I'm trying to get a 10GBASE-SR SFP+ module running on a self-made board.
> The MAC driver doesn't support phylink (i.e. no I²C accesses to the SFP+
> registers), therefore I want to use PHY-less mode. On the other hand,
> the "fixed-link" mode supports only up to 1 Gbit. The "in-band-status"
> mode is said to not work with my setup. Thus I'm running out of options.
> I ask you if there are further options to get things running.
> 
> 
> About the hardware
> ------------------
> 
> My company built an access point containing an NXP QorIQ T1023 Soc. This
> SoC includes a MAC which is connected to an SFP+ cage. We use XFI for
> the connection between MAC and SFP+. In addition, the SFP+ module is
> connected to the SoC via I²C to access its registers.
> 
> 
> About the software
> ------------------
> 
> I am running OpenWRT with a Linux 4.14.137 kernel. There are patches on
> that kernel (mostly from the OpenWRT project, some by us).
 
Hi Tanjeff

Most kernel hackers don't care about such old kernels.

> Details about the problem
> -------------------------
> 
> For the MAC, I use the DPAA driver.

Is this dpaa2? If so, a modern kernel supports PHYLINK. That solves
most of your problems. The kernel SFP code should work so long as you
have access the i2c via a standard linux I2C bus.

     Andrew

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-04-24 18:56 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-04-24 16:41 How to operate 10Gbit SFP+ module if driver doesn't support SFP+? Tanjeff Moos
2020-04-24 18:56 ` Andrew Lunn

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).