主题中讨论的其他器件:DP83867IS
您好!
我们使用的 K2E SOC 可能具有8个 SGMII 端口。 外部 PHY (DP83867IS)连接到 SGMII0、后者进一步连接到 Atheros 模块。
MDI 链路(PHY 和 Atheros 之间的链路)按预期正确启动、与固定速度对应的器件自动协商高达1000Mbit、100Mbit 和10Mbit。
但是、我们在 SGMII 接口上遇到了问题。
读取 MAC 和 PHY 中的相应寄存器会显示 SGMII 自动协商过程尚未完成。 未建立链路。
通过读取 MAC 寄存 器、SGMII_STATUS 状态寄存器(14h)、我们得到的值为30h、这意味着它们的自动协商完成、而不是链路出现。
通过读取 PHY 寄存器、 SGMII 自协商状态(37h)、我们得到的值为0。
DP83867IS 上的 RX_CTRL 引脚 绑定到模式3。
PHY 寄存器转储.....
MII 写入0x03 0x0D 0x1f
MII 写入0x03 0x0E 0x0037
MII 写入0x03 0x0D 0x401F
MII 读取0x03 0x0E
0000
0 = SGMII 自协商过程未完成。
0 =未接收到 SGMII 页面。
MII 读取0x03 0x10
5840
TX FIFO 深度01 = 4字节/半字节(1000Mbps/其他速度)正常
RX FIFO 深度 ebenso
SGMI_EN 1 =使能 SGMII 良好
FORCE_LINK_Good POWER_SAVE_MODE 0 =正常工作
MDI_cross1x =启用自动交叉正常
MII 写入0x03 0x0D 0x1f
MII 写入0x03 0x0E 0x06e
MII 写入0x03 0x0D 0x401F
MII 读取0x03 0x0E
0800
1 = SGMII 绑定到启用。
MII 写入0x03 0x0D 0x1f
MII 写入0x03 0x0E 0x31
MII 写入0x03 0x0D 0x401F
MII 读取0x03 0x0E
10b0
MII 读取0x03 0x14
29C7
SGMII_AutoNeg_EN 1正常
以下是 U-boot 中 fle arch/arm/dts/keystone-k2e-evm.dts 中的器件树结构更改。
ethphy0:以太网 phy@0{
状态="ok";
兼容="ti、dp83867";
TI、Rx 内部延迟= ;
TI、TX 内部延迟= ;
TI、FIFO 深度= ;
reg =<0>;
ti、最小输出阻抗;
};
请帮我进一步解决这个问题。 请建议一些步骤。
谢谢
Arun