Re: [PATCH net-next v2 0/3] net: phy: dp83869: Support 1000Base-X SFP

From: Romain Gantois

Date: Fri Jun 05 2026 - 09:28:40 EST


Hi Álvaro,

On Friday, 13 February 2026 13:31:17 CEST Álvaro G. M. wrote:
> On Mon, 10 Nov 2025 10:24:52 +0100
>
> Romain Gantois <romain.gantois@xxxxxxxxxxx> wrote:
> > Hi everyone,
> >
> > This is version two of my series which adds support for using the
> > DP83869 PHY as a transceiver between an RGMII upper MAC and a
> > downstream 1000Base-X SFP module.
>
> Hi Romain,
>
> I am quite interested in this too, as we have a new version of a PCB in
> which we replaced a dp83848 (which only works with 100base-tx) with
> dp83869 with the intent of using 1000base-sx or similar SFPs.
>
> The are two different SFPs that I was able to use with dp83848 and
> would like to use them with the dp83869 as well:
>
> - RJ45 based:
> - Robofiber SFP-5000-RJ45A: 10/100Base-Tx SFP RJ45
> - H!Fiber ASF-GE-T1 1000Base-T SFP RJ-25
>
> Both of these already work with dp83869 with kernel 6.12, provided I
> set mode to DP83869_RGMII_100_BASE. If I try to make the 1000Base-T
> work at 1Gbps by setting op mode to DP83869_RGMII_1000_BASE it will
> still set speed to 100Mbps and will work just fine, but if I try to set
> speed to 1000, all data transfer stops.
>
> Personally, I could live with this, but I assume it should be possible
> for this SFP to work at 1Gbps.
>

I can't speak for this particular SFP module, but I've managed to make the
DP83869 work at near-1Gbps with my modules.


> - Fiber based:
> - CISCO-FINISAR G155B3520KCD which I believe reports bit
>
> ETHTOOL_LINK_MODE_10000baseSR_Full_BIT
>
> - AVAGO AFBR-709SMZ which reports as 10gbase-r
> - ATGBICS AFBR-5710ALZ-C 1000BASE-SX
>
> The first two, even if they report as 10Gbase, did work with dp83848 at
> 100Mbps out of the box, but do not seem to work in any case with
> dp83869. The last one, 1000base-sx, is the one that I expected to
> work either out of the box or by using this set of patches of yours.
> However, none of them do work.
>
> What I did next, as the 10gbase was simply refused, was to apply the
> following patch above your series, which is more or less based on one
> of your previous patches from 2025. The key here is that I try hard to
> fallback to 100Mbps on every instance of non working SFP. So, I need
> that if linkmode_empty(sfp_support) because the 10/100 SFPs simply do
> not have any bit active to signal that capability, and I also set mode
> to RGMII_100_BASE in every case. So, with this patch:
>
> sfp amba_pl:sfp: module AVAGO AFBR-709SMZ rev G4.1 sn
> AA17053045F dc 170204
> TI DP83869 axienet-40c00000:01: dp83869_module_insert SFP compatible link
> mode: 10gbase-r
> TI DP83869 axienet-40c00000:01: incompatible PHY-to-SFP module link mode
> 10gbase-r! Try simply 10/100
> Configuring network: xilinx_axienet 40c00000.ethernet eth0: PHY [axienet-
> 40c00000:01] driver [TI DP83869] (irq=POLL)
> xilinx_axienet 40c00000.ethernet eth0: configuring for phy/1000base-x link
> mode xilinx_axienet 40c00000.ethernet eth0: Link is Up - 100Mbps/Full -
> flow control off
>
> And finally I have my other device answer to ping! So it seems that the
> DP83869, as is, won't be able to run at 1Gbps no matter what.
>
> From the datasheet... wouldn't it be necessary to update OP_MODE_DECODE
> Register (Offset = 1DFh) [Reset = 0040h] CFG_OPMODE bits 2-0 to set value 1
> RGMII to 1000Base-X?
>

This is done by dp83869_configure_mode() when the relevant SFP module is
inserted.

Thanks,

--
Romain Gantois, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

Attachment: signature.asc
Description: This is a digitally signed message part.