linux-以太网PHY回送测试的编码

我必须在Linux中编写以太网PHY回送测试.我以前从未做过,也不知道从哪里开始.经过研究后,我提出了测试计划,我想知道是否有人可以帮助我进行验证并为我的问题提供一些指导.

这是一个外部环回设置.它为以太网交换芯片上的每个内部PHY连接TX /-到RX /-引脚.

因此,回送高级数据包路径如下:

CPU-> PHY0(芯片)->以太网交换机(芯片)的内部PHY-> PHY0(芯片)-> CPU

对于这项测试,我打算

>使用特定的MAC地址在以太网交换机上配置内部PHY,
>使用CPU的MAC地址作为源地址并
在步骤1中配置为目标地址的MAC地址,
>发送并等待接收测试数据包,
>比较发送和接收的数据模式.

有什么建议么?另外,我想知道Linux中是否可以使用这些函数来生成步骤2的数据包,并发送步骤3的数据包.

非常感谢你.

最佳答案
大多数物理可以切换到测试模式.我们使用引导加载程序直接写入
Phy并切换到测试模式.

还有一个取自documentation / networking / phy.txt的ioctl
   Ethtool便利功能.

int phy_mii_ioctl(struct phy_device * phydev,
                 struct mii_ioctl_data * mii_data,int cmd);

MII ioctl.请注意,此功能将完全破坏状态
   机器,如果您编写诸如BMCR,BMSR,ADVERTISE之类的寄存器.
   仅用于写入非标准的寄存器,并且不要启动
   重新谈判.

转载注明原文:linux-以太网PHY回送测试的编码 - 代码日志