在linux上调试tja1103 以太网phy

1.移植phytool

由于在linux板子上没有phytool这个工具,先移植

1.1 下载代码

git clone https://github.com/wkz/phytool.git

1.2 设置环境变量

export CROSS_COMPILE=aarch64-none-linux-gnu-
export CC=${CROSS_COMPILE}gcc

1.3 编译

make

image

生成的产物就是phytool,然后用scp命令将其copy到板子tmp目录下

scp ./phytool/phytool root@192.168.1.202:/tmp/

2.验证phytool移植的对不对

怎么验证呢?可以读一下phy的id寄存器8002h,8003h,看是否是和datasheet上的值是一样的

image

 下图中的eth0 是ifconfig里面的interface

26是因为目前我们phyad被硬件配置了0x1a = 26

1指MMD1。由于8000h-83ffh是被MMD1, MMD3, MMD30共享的,所以这里写1 or 3 or 30都是可以的。

image

 3.查看tx/rx寄存器RGMII_TXC_DELAY_CONFIG和RGMII_RXC_DELAY_CONFIG

image

image

image

根据上图中的公式,计算下相位delay

0x12 = 18

phase-shift = 73.8 + 0.9 * 18 = 90°

所以相位应该是delay 1/4个周期,实际测试phy发出来的波形如下。

image

image

由于phy收到后,是在自己内部进行delay的,所以不能在总线上测量到,这里仍然测量一下,如下

image

4.查看信号质量

image

image

 结果如下

image

 

posted @ 2026-01-16 17:35  midhillzhou  阅读(4)  评论(0)    收藏  举报