为了与RGMII链接伙伴正确使用,需要在Linux中写入或检查哪些LAN7431寄存器?
LAN7431需要3项才能与LAN743x内核驱动程序正常运行(适用于任何LTS内核4.19或更高版本,或我们的任何LAN743x驱动程序后端口):
1. 125 MHz时钟已启用。LAN7431需要它在1000Mbps速度下提供125MHz的RGMII TX时钟(TXC)。
2. 设置为RGMII模式。
3. 设置RGMII时钟延迟。最低期望是LAN7431提供TXC延迟。
写寄存器0x010=0x02000000(位25=1,以启用LAN7431 125MHz时钟)
写入寄存器0x100=0x000220A(位19=0,启用RGMII模式)
写寄存器0x128=0x00000002(LAN7431启用TXC延迟,不启用RXC延迟)
对于寄存器(0x128),上述操作仅提供RXC延迟的RGMII下行部分(通常是PHY)。
对于其他组合,以下是LAN7431寄存器0x128的设置。LAN8830(1000BASE-T RGMII PHY)用作下行RGMII的示例。
LAN7431寄存器0x128设置:
LAN8830提供RXC和TXC delay => 0x00000000
LAN8830仅提供TXC delay => 0x00000001
LAN8830仅提供RXC delay(LAN8830默认)=> 0x00000002
LAN8830不提供delay => 0x00000003
|