TI中文支持网
TI专业的中文技术问题搜集分享网站

DP83TC811S-Q1 调试驱动错误问题

软件:linux , 4wire模式

总结一下,我们在高通9607的平台上调试dp83tc811以太网芯片,碰到的问题是。

在dp83811_config_init中调用phy_write_mmd返回错误,跟踪代码

static inline int phy_write_mmd(struct phy_device *phydev, int devad,u32 regnum, u16 val)

{

         if (!phydev->is_c45)

                   return -EOPNOTSUPP;

         regnum = MII_ADDR_C45 | ((devad & 0x1f) << 16) | (regnum & 0xffff);

         return mdiobus_write(phydev->bus, phydev->addr, regnum, val);

}

if (!phydev->is_c45)

         return -EOPNOTSUPP;

返回错误。

 咨询下面的3个问题,请回复下

1 dp83tc811 phy芯片是否是IEEE802.3 clause 45 所支持的设备?如果支持,如何在驱动中增加相关的设置。

2 如果不支持,dp83tc811如何实现mmd寄存器的读写。

3 内核中提供有phy_read_mmd_indirect和phy_write_mmd_indirect的接口,是否可以用这两个接口读写MMD寄存器。如果可以,请问这两个函数的第二个参数int prtad(MMD Address)如何设置?

Annie Liu:

您的问题在E2E英文论坛已有工程师跟进,请继续关注。

https://e2e.ti.com/support/interface/f/138/p/780577/2889985?tisearch=e2e-sitesearch&keymatch=DP83TC811S-Q1#2889985

user6195594:

Hi, lin:
这个问题怎么解决的?我现在遇到了跟你一样的问题,能不能把你的经验跟我分享一下?谢谢

user6195594:

回复 Annie Liu:

Hi, Liu:
英文论坛只提到了支持clause 22,而clause 45到底支不支持?
"have to use register 0xD/E to access the IEEE registers for IEEE802.3bw"意思是通过0xD和0xE寄存器使用phy_write()接口替代phy_write_mmd()吗?
谢谢!

赞(0)
未经允许不得转载:TI中文支持网 » DP83TC811S-Q1 调试驱动错误问题
分享到: 更多 (0)