From: "Russell King (Oracle)" <linux@armlinux.org.uk>
To: Sean Anderson <sean.anderson@linux.dev>
Cc: Andrew Lunn <andrew@lunn.ch>, Suraj Gupta <suraj.gupta2@amd.com>,
andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com,
kuba@kernel.org, pabeni@redhat.com, michal.simek@amd.com,
radhey.shyam.pandey@amd.com, horms@kernel.org,
netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, git@amd.com,
harini.katakam@amd.com
Subject: Re: [PATCH net-next 2/2] net: axienet: Add support for AXI 2.5G MAC
Date: Tue, 19 Nov 2024 15:49:24 +0000 [thread overview]
Message-ID: <ZzyzhCVBgXtQ_Aop@shell.armlinux.org.uk> (raw)
In-Reply-To: <72ded972-cd16-4124-84af-8d8ddad049f0@linux.dev>
On Tue, Nov 19, 2024 at 10:26:52AM -0500, Sean Anderson wrote:
> On 11/18/24 20:35, Andrew Lunn wrote:
> > On Mon, Nov 18, 2024 at 11:00:22AM -0500, Sean Anderson wrote:
> >> On 11/18/24 10:56, Russell King (Oracle) wrote:
> >> > On Mon, Nov 18, 2024 at 01:48:22PM +0530, Suraj Gupta wrote:
> >> >> Add AXI 2.5G MAC support, which is an incremental speed upgrade
> >> >> of AXI 1G MAC and supports 2.5G speed only. "max-speed" DT property
> >> >> is used in driver to distinguish 1G and 2.5G MACs of AXI 1G/2.5G IP.
> >> >> If max-speed property is missing, 1G is assumed to support backward
> >> >> compatibility.
> >> >>
> >> >> Co-developed-by: Harini Katakam <harini.katakam@amd.com>
> >> >> Signed-off-by: Harini Katakam <harini.katakam@amd.com>
> >> >> Signed-off-by: Suraj Gupta <suraj.gupta2@amd.com>
> >> >> ---
> >> >
> >> > ...
> >> >
> >> >> - lp->phylink_config.mac_capabilities = MAC_SYM_PAUSE | MAC_ASYM_PAUSE |
> >> >> - MAC_10FD | MAC_100FD | MAC_1000FD;
> >> >> + lp->phylink_config.mac_capabilities = MAC_SYM_PAUSE | MAC_ASYM_PAUSE;
> >> >> +
> >> >> + /* Set MAC capabilities based on MAC type */
> >> >> + if (lp->max_speed == SPEED_1000)
> >> >> + lp->phylink_config.mac_capabilities |= MAC_10FD | MAC_100FD | MAC_1000FD;
> >> >> + else
> >> >> + lp->phylink_config.mac_capabilities |= MAC_2500FD;
> >> >
> >> > The MAC can only operate at (10M, 100M, 1G) _or_ 2.5G ?
> >>
> >> It's a PCS limitation. It either does (1000Base-X and/or SGMII) OR
> >> (2500Base-X). The MAC itself doesn't have this limitation AFAIK.
> >
> >
> > And can the PCS change between these modes? It is pretty typical to
> > use SGMII for 10/100/1G and then swap to 2500BaseX for 2.5G.
>
> Not AFAIK. There's only a bit for switching between 1000Base-X and
> SGMII. 2500Base-X is selected at synthesis time, and AIUI the serdes
> settings are different.
Okay. First it was a PCS limitation. Then it was a MAC limitation. Now
it's a synthesis limitation.
I'm coming to the conclusion that those I'm communicating with don't
actually know, and are just throwing random thoughts out there.
Please do the research, and come back to me with a real and complete
answer, not some hand-wavey "it's a limitation of X, no it's a
limitation of Y, no it's a limitation of Z" which looks like no one
really knows the correct answer.
Just because the PCS doesn't have a bit that selects 2500base-X is
meaningless. 2500base-X is generally implemented by upclocking
1000base-X by 2.5x. Marvell does this at their Serdes, there is
no configuration at the MAC/PCS for 2.5G speeds.
The same is true of 10GBASE-R vs 5GBASE-R in Marvell - 5GBASE-R is
just the serdes clocking the MAC/PCS at half the rate that 10GBASE-R
would run at.
I suspect this Xilinx hardware is just the same - clock the transmit
path it at 62.5MHz, and you get 1G speeds. Clock it at 156.25MHz,
and you get 2.5G speeds.
Thanks.
--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!
next prev parent reply other threads:[~2024-11-19 15:49 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-18 8:18 [PATCH net-next 0/2] Add support for AXI 2.5G ethernet Suraj Gupta
2024-11-18 8:18 ` [PATCH net-next 1/2] dt-bindings: net: xlnx,axi-ethernet: Add bindings for AXI 2.5G MAC Suraj Gupta
2024-11-18 15:36 ` Sean Anderson
2024-11-18 15:54 ` Maxime Chevallier
2024-11-18 15:57 ` Sean Anderson
2024-11-19 1:38 ` Andrew Lunn
2024-11-19 9:40 ` Gupta, Suraj
2024-11-19 13:38 ` Andrew Lunn
2024-11-19 7:42 ` Krzysztof Kozlowski
2024-11-18 8:18 ` [PATCH net-next 2/2] net: axienet: Add support " Suraj Gupta
2024-11-18 14:42 ` Pandey, Radhey Shyam
2024-11-18 15:56 ` Russell King (Oracle)
2024-11-18 16:00 ` Sean Anderson
2024-11-18 16:08 ` Russell King (Oracle)
2024-11-19 10:28 ` Gupta, Suraj
2024-11-19 13:18 ` Russell King (Oracle)
2024-11-19 15:12 ` Russell King (Oracle)
2024-11-19 1:35 ` Andrew Lunn
2024-11-19 15:26 ` Sean Anderson
2024-11-19 15:49 ` Russell King (Oracle) [this message]
2024-11-19 16:42 ` Sean Anderson
2025-02-20 11:30 ` Gupta, Suraj
2025-02-20 11:44 ` Russell King (Oracle)
2025-02-20 12:17 ` Gupta, Suraj
2025-02-20 14:35 ` 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=ZzyzhCVBgXtQ_Aop@shell.armlinux.org.uk \
--to=linux@armlinux.org.uk \
--cc=andrew+netdev@lunn.ch \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=git@amd.com \
--cc=harini.katakam@amd.com \
--cc=horms@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=michal.simek@amd.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=radhey.shyam.pandey@amd.com \
--cc=sean.anderson@linux.dev \
--cc=suraj.gupta2@amd.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;
as well as URLs for NNTP newsgroup(s).