200I PRO网口调试经验分享
收藏回复举报
200I PRO网口调试经验分享
发表于2025-07-30 11:16:29
0 查看

网口调试分析

案例1:

  • 问题分析

网口不通问题不明确,先进行硬件全面检查,再检查软件和BIOS问题。具体的分析步骤如下:

1.png

2.png

  • 分析步骤
  1. 配置检查

1.PHY_CFG_MODE 配置    011  UTPóSGMII -- OK

2.PHY ADD硬件设计是eth 0对应的PHYADD是001 -- OK

3.CFG_LDO配置1.8V – OK

2、信号测试

1.png

TX

2.png

RX

1.png

XTAL_OUT/CLK

2.png

MDIO0_CLK

MDIO信号

1.png

MDIO信号

从MDIO信号中读出的数据,PHY芯片链路正常。

MDIO数据帧格式如下所示:

数据帧格式组成:01(2)+01/10(2)+PHY.address(5)+reg.address(5)+10/Z0(2)+register data(16)

数据帧格式一共32bit。

根据数据线的第三、四bit位区分当前状态,当数据以0101开始,则该数据段为写;当数据以0110开始,则该数据段为读。MDIO的工作流程为:

1MDIO接口在没有传输数据的空闲状态(IDLE)数据线MDIO处于高阻状态。

2、MDIO出现一个2bit的开始标识码(01)一个读/写操作开始

3、MDIO出现一个2bit数据来标识是读操作(10)还是写操作(01)

4、MDIO出现一个5bit数据标识PHY的地址

5、MDIO出现一个5bit数据标识PHY寄存器的地址

6、MDIO需要2个时钟的访问时间

7、MDIO串行读出/写入16bit的寄存器数据

8、MDIO恢复成IDLE状态,同时MDIO进入高阻状态

Clause 22各个寄存含义如下:

  1. 寄存器 0x00:控制寄存器 (Control Register)

    复位位(Reset):复位PHY设备。

    自协商使能(Auto-Negotiation Enable):启用自动协商。

    速度选择(Speed Selection):选择10/100 Mbps等速度。

    环回使能(Loopback Enable):启用环回模式。

    双工模式(Duplex Mode):设置全双工或半双工。

    2. 寄存器 0x01:状态寄存器 (Status Register)

    链路状态(Link Status):指示链路是否正常。

    自动协商完成(Auto-Negotiation Complete):指示自动协商是否完成。

    能力(Capabilities):显示设备支持的特性,如10/100 Mbps。

    3. 寄存器 0x02:PHY ID 1 (PHY Identifier 1)

    PHY芯片制造商的标识高16位。

    4. 寄存器 0x03:PHY ID 2 (PHY Identifier 2)

    PHY芯片制造商的标识低16位。

由上述硬件测试证明PHY芯片工作正常。确定为软件问题驱动没装对。

  1. 本地制卡将驱动和装驱动的脚本存入NVME盘中,长按DEL进入EBL模式(bios调试界面)启动之后PHY芯片MDIO、时钟、RX信号均正常,TX异常,在光口XGE2处检测到的TX信号与PHY芯片发出的RX信号一致。

得出结论:驱动上把XGE0和XGE2交叉接反。

4、各伙伴XGE0-XGE3的对应eth0-eth3有所差异,底板上是双电口双光口,BIOS出版本四个口全部配置成千兆网口。测试PHY芯片的TXRX均正常。但是进入EBL后给eth0配上网段后ping不通。但是另一块板卡可以ping通。

2.png

1.png

5、检查两块底板PHY的原理图设计,原理图设计并无明显差异,在检查模式配置时只有PHY ADD配置不同的eth 3口配的PHYADD是010,这与硬件设计上的配置有差异,在该环境上尝试将PHYADD配成010

6、进入EBL模式中给eth0配个网段,PCping模组可以ping通。PXE制卡时图要通过PXE服务器连接模组和PC,用交换机连接在一起。检查到交换机是百兆的,而网口是千兆的,更换千兆交换机后可以ping通。

7、网络配置上在启动阶段到进入OS之间这段的网络配置是BIOS配置的,在进入OS之后的网络配置是驱动配置的,到这个阶段网口通了可以进行PXE制卡。

   2.png

案例2:

问题描述:8211网口不通

8211上件启动后,识别到phy芯片后可以看到如下打印:

3.png

排查phy如下硬件配置均未检查出问题但网口不通:

1.png

原理图对比:参考设计给156.25M时钟输入有预留下拉,伙伴原理图上下拉都上件导致给晶振的输入电压不足。

2.png

3.png

修改措施:去掉下拉电阻,重新测试网口没问题。

我要发帖子