2395244_zh-CN

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2395244_zh-CN

2395244_zh-CN

USXGMII 多速率 i.MX95

您好,

我们正在评估是否可以在 i.MX95 上实现一个能够支持以下以太网速度的以太网端口:

  • 10GBASE-T
  • 5GBASE-T
  • 2.5GBASE-T
  • 1000BASE-T
  • 100BASE-TX
  • 10BASE-Te

通常,这要求我们在设计中集成一个支持 10Gbit 以太网的 PHY,并通过 USXGMII 或 XFI 这两个接口之一将其连接到 i.MX95 以太网控制器。

据我们了解,USXGMII 接口理论上是一个多速率接口,这意味着它可以通过一条链路实现从 10Gbit 到 10bit 的所有速度。
相比之下,XFI 接口是单速率接口,只能支持 10Gbit。

根据 i.MX95 参考手册(例如第 104.2 节,表 621)i.MX95 同时支持 XFI 和“10G-USXGMII”。所以初步看来,我们想要的接口 USXGMII 似乎得到了支持。

然而,有几点让我们感到困惑:

1.“10G-USXGMII”声明可以解释为该接口理论上是 USXGMII 链路,但实际上只能在 10Gbit 模式下工作。

2. NXP 评估板IMX95LPD5EVK-19 使用 Marvell AQR113C PHY 实现 10GBase-T 端口。

a) 在图 1 的框图中,1.1 节中,PHY 似乎连接到了 USXGMII 接口:

stefan_wenninge_0-1784101377785.pngstefan_wenninge_0-1784101377785.png

b) 在相关的 2.11.3 节“10 Gbit 以太网接口”中,AQR113C 以太网收发器据称支持从 10Gbit 到 10bit 的所有数据速率,暗示了真正的 USXGMII:

stefan_wenninge_1-1784101562514.pngstefan_wenninge_1-1784101562514.png

c) 本节还提到,用于连接以太网 PHY 的接口是 XFI:

stefan_wenninge_2-1784101765113.pngstefan_wenninge_2-1784101765113.png


因此,我们最终还是不清楚 i.MX95 是否支持完整的多速率 USXGMII,还是只支持 10Gbit 版本。
我们尝试以 NXP 评估板作为参考,但我们也不确定该板上的 10GbE 端口是通过 USXGMII 连接(允许从 10Gbit 到 10bit 的多速率)还是通过 XFI 连接(仅限 10Gbit)。


请问能否为我们澄清一下: i.MX95 是否有可能实现真正的多速率 10GbE 端口,支持从 10Gbit 到 10bit 的速度?

Re: USXGMII multi-rate on i.MX95非常感谢您如此详尽的回复。
这样就消除了我们这边的任何疑惑!
Re: USXGMII multi-rate on i.MX95

1. “10G-USXGMII”的含义

“10G-USXGMII”指的是标准的多速率USXGMII协议,而不是仅10G模式。“10G”表示固定的 SerDes 通道速度,而 USXGMII 支持 10M、100M、1G、2.5G、5G 和 10G 以太网的带内速率自适应。

在 i.MX95 上,此模式由 PCS_PROT_10G_SXGMII 设置表示。

2. i.MX95 EVK 上使用的接口

i.MX95 EVK 使用 XFI (10GBASE-R) 而不是 USXGMII。在 imx95-19x19-evk.dts 中,enetc_port2 配置如下:

phy-mode = "10gbase-r";

因此,机载 AQR113C 以 XFI 模式运行。

3. 是否支持真正的多速率 USXGMII?

是的。i.MX95 NETC 硬件支持 USXGMII,Linux ENETC4 驱动程序通过 enetc4_set_port_speed() 处理速度更改。Marvell AQR113C 也支持 USXGMII 主机接口模式。

4. 定制板需要哪些组件?

为实现完整的多速率操作:

配置设备树:
phy-mode = "usxgmii";
managed = "带内状态";

将 AQR113C 固件配置为 USXGMII 主机模式而不是 XFI 模式。

EVK 的 10GbE 端口使用 XFI,但定制的 i.MX95 设计可以使用 USXGMII 和 AQR113C(或类似的 PHY)来支持通过单个 MAC 到 PHY 链路传输 10M/100M/1G/2.5G/5G/10G 网络。

谢谢!

Re: USXGMII multi-rate on i.MX95

我不是原帖作者,但我也在尝试让usxgmii运行起来。


NXP 是否验证过 usxgmii 是否能在 BSP 内核上运行?我尝试将其与 mv-cux3610 PHY 一起使用,但出现以下错误:

[   43.063202] nxp_enetc4 0002:00:10.0 (unnamed net_device) (uninitialized): MAC returned PCS which does not support usxgmii
[   43.074224] nxp_enetc4 0002:00:10.0 (unnamed net_device) (uninitialized): failed to validate link configuration for inband
[   43.085308] nxp_enetc4 0002:00:10.0: Failed to create phylink
[   43.091726] nxp_enetc4 0002:00:10.0: probe with driver nxp_enetc4 failed with error -22

这似乎是由于 netc PCS 没有宣传 usxgmii 支持,而只支持 10gbase-r、2500-basex 和 sgmii 造成的:

quentin_sai_0-1784223770904.pngquentin_sai_0-1784223770904.png

(这是在 lf-6.18.y linux-imx 分支上)


Re: USXGMII multi-rate on i.MX95还有一个后续问题:NXP Linux 电路板支持包。 中是否包含 Marvell AQR113C 的驱动程序,还是我们需要自己提供的外部模块?Re: USXGMII multi-rate on i.MX95

该驱动程序已包含在 NXP Linux 电路板支持包中,链接:

https://github.com/nxp-real-time-edge-sw/real-time-edge-linux/blob/linux_6.18.20/drivers/net/phy/aqu...

Re: USXGMII multi-rate on i.MX95感谢你的回复!
我最后一个问题:是否可以将 i.MX95 EVK 上的 enetc_port2 和 AQR113C 配置为 USXGMII 模式?这样我们就可以测试 EVK 上 USXGMII 接口的多速率功能了吗?
Re: USXGMII multi-rate on i.MX95

在 EVK 上简单地“将 DTS 切换到 usxgmii”只是软件层面的尝试。

您还需要使用 USXGMII 固件重新配置 AQR113C,但由于 EVK 的板设计面向 XFI,因此这不是多速率验证的可靠途径。
如果目标是验证真正的多速率 USXGMII(10M/100M/1G/2.5G/5G/10G),我们建议构建一个专为 USXGMII 设计的定制板(SerDes 路由 + AQR113C 在 USXGMII 主机模式固件中 + phy-mode = "usxgmii")。

在获得 AQR113C 的 USXGMII 配置固件后,您可以使用 EVK 板,但请注意其局限性。

谢谢!

Tags (1)
No ratings
Version history
Last update:
‎07-21-2026 02:35 AM
Updated by: