2269827_zh-CN

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

2269827_zh-CN

2269827_zh-CN

LS1028A 2.5G SGMII 以太网无法与 QCA8081 配合使用

我们在 LS1028A 的 Serdes Lane A 上使用 QCA8081 PHY 实现 2.5G SGMII。
我们启用了 QCA8081 驱动程序 (CONFIG_QCA808X_PHY=y),并更新了 rcw(rcw_1500_sdboot.rcw) 和 dts(ls1028a-rdb.dts)如下图所示。
rcw:

SRDS_PRTCL_S1_L0=1
SRDS_PRTCL_S1_L1=5
SRDS_PRTCL_S1_L2=11
SRDS_PRTCL_S1_L3=11


dts:

&enetc_mdio_pf3 {

sgmii_phy0: ethernet-phy@24 {
reg =<0x18>;
};

};

&enetc_port0 {
phy-handle =<& sgmii_phy0>;
phy-mode ="2500base-x";
status ="okay";
};

观察结果:
Ping 在 2.5G 模式下不起作用。但 1G 模式正常

2.5G 的 Ethtool 输出:
root@ls1028ardb:/home/user# ethtool eno0
eno0 的设置:
支持的端口:[ ]
支持的链接模式: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
2500baseT/Full
支持暂停帧使用:对称只接收
支持自动协商:是
支持 FEC 模式:未报告
广告链接模式: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
2500baseT/Full
广告暂停帧使用:对称只接收
广告自动协商:是
宣传的 FEC 模式:未报告
链接伙伴宣传的链接模式: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
2500baseT/Full
链接伙伴宣传的暂停帧使用:对称只接收
链路合作伙伴宣传的自动协商:是
链路合作伙伴宣传的 FEC 模式:未报告
速度:2500Mb/s
双工:全
自动协商:开
主从配置文件:首选从
主从状态:从
端口:双绞线
PHYAD:24
收发器:外部
MDI-X:关(自动)
支持唤醒:g
唤醒:d
检测到链接:是

Dmesg 日志:
root@ls1028ardb:/home/user# dmesg | grep eno0
[ 13.165970] fsl_enetc 0000:00:00.0 eno0: 从 eth0 重命名
[ 13.721100] fsl_enetc 0000:00:00.0 eno0: PHY [0000:00:00.3:18]驱动程序 [Qualcomm QCA8081] (irq=POLL)
[ 13.722673] fsl_enetc 0000:00:00.0 eno0: configuring for phy/2500base-x link mode
[ 17.813736] fsl_enetc 0000:00:00.0 eno0: Link is Up - 2.5Gbps/Full - flow control rx/tx

如有遗漏,请提出宝贵意见。

Re: LS1028A 2.5G SGMII ethernet not working with QCA8081

感谢您的答复。
是的,我们还尝试了 SRDS_PRTCL_S1_L0 的 1 和 6



请参见所附 RCW 文件:
/*
* SerDes 协议 - 0x85bb
*
* 频率:
* 内核 -- 1500 MHz
* 平台 -- 400 MHz
* DDR -- 1600 MHz
* DDR 数据速率 -- 1.600 GT/s
*/

#include<../ls1028asi/ls1028a.rcwi>




SYS_PLL_RAT=4
MEM_PLL_RAT=16
CGA_PLL1_RAT=15
CGA_PLL2_RAT=12
HWA_CGA_M1_CLK_SEL=1
HWA_CGA_M2_CLK_SEL=7
HWA_CGA_M3_CLK_SEL=6
HWA_CGA_M4_CLK_SEL=3
DDR_REFCLK_SEL=2
DRAM_LAT=1
BOOT_LOC=21
FLASH_CFG1=3
SYSCLK_FREQ=600
IIC2_PMUX=6
IIC3_PMUX=2
IIC4_PMUX=2
IIC5_PMUX=2
IIC6_PMUX=3
CLK_OUT_PMUX=2
EC1_SAI4_5_PMUX=5
EC1_SAI3_6_PMUX=5
USB3_CLK_FSEL=39
ENETC_RCW=3
GTX_CLK125_PMUX=2
SRDS

/* PCIe 控制器的勘误表 */
#include<../ls1028asi/a008851.rcw>
#include<../ls1028asi/a010477.rcw>
#include<../ls1028asi/a009531.rcw>

/* 增加 FSPI 时钟频率 */
#include<../ls1028asi/fspi_speed.rcw

我们为 Serdes 接口使用 100MHz 的参考时钟。
用于 QSGMII(2.5G)的 Serdes 通道 B分布式 4 端口)正在工作。

Re: LS1028A 2.5G SGMII ethernet not working with QCA8081

SRDS_PRTCL_S1_L0=1

SRDS_PRTCL_S1_L1=5

SRDS_PRTCL_S1_L2=11

SRDS_PRTCL_S1_L3=11

配置是否

srds_prtcl_s1_l0=0x1

srds_prtcl_s1_l1=0x5

srds_prtcl_s1_l2=0xb

srds_prtcl_s1_l3=0xb

 

能否请您提供输入和 RCW 设置的 PLL 频率信息?

谢谢!

Re: LS1028A 2.5G SGMII ethernet not working with QCA8081

我们还使用125MHz的参考时钟进行了测试,并观察到了相同的结果。

Re: LS1028A 2.5G SGMII ethernet not working with QCA8081

亲爱的 June-Lu

我们计划对 SerDes 配置进行以下修改,以支持 SerDes 通道 A 上的 2.5G SGMII 操作:

  1. 按照 2.5G SGMII 操作的要求,将 SD1_REF_CLK1_P/N SD1_REF_CLK2_P/N 的 SerD es 参考时钟更改 为 156.25 MHz
    。 (目前我们使用的时钟发生器相同的时钟频率,仅测试 SerDes Lane A )

  2. SerDes PLL 参考时钟选择位[945:944] 从现有值 “00” 更新 为“10”。 你能帮我们做这个改变吗?

  3. 更改 协议选择"65BB用于所需的 SerDes 通道配置。

请确认是否需要进行其他更改(PLL 设置、SerDes 寄存器、RCW/DTS 更新或 PHY 相关配置)以支持这一更改?

期待您的支持。

同时附上我们的框图,供您参考。

谢谢

谨致问候


Re: LS1028A 2.5G SGMII ethernet not working with QCA8081

1.如果 SerDes 将 SD1_REF_CLK1_P/N 和 SD1_REF_CLK2_P /N 的参考时钟均设置为 156.25 MHz,那么如何实现 Q SGMII 和 PCIe。

2.SRDs_pll_ref_clk_sel_s1=2,请参阅 https://github.com/nxp-qoriq/rcw/blob/LSDK-21.08/ls1028asi/ls1028a.rcwi

由于这不是官方配置,您可以尝试一下。

谢谢!

Tags (1)
No ratings
Version history
Last update:
‎01-08-2026 02:26 AM
Updated by: