主题中讨论的其他器件:DP83869
我将使用 Linux 5.15内核、并尝试通过在 SGMII (SGMII 转铜缆)配置下运行的 DP83869 PHY 获取以太网链路。
我已为此配置设置了搭接。 我没有在器件树中明确设置模式、如文档所示:
TI、运算模式
说明:
PHY 的工作模式。 如果未设置此位、则工序
由搭接设置模式。 请参阅 dt-bindings/net/ti-dp83869.h 以了解值
不过、当我首次加载驱动程序时、它会以 RGMII 模式出现。 事实证明、驱动程序函数 dp83869_set_straped_mode 阅读 Strap 配置_STS 但在位0-2中查找模式、而不是在正确的位9-11中查找。
VAL = PHY_READ_MMD (phydev、DP83869_DEVADDR、DP83869_STAP_STS1);
如果(val < 0)
返回 val;
dp83869->mode = val 和 DP83869_stap_OP_mode_mask; // val 和0x7
这看起来像是内核错误、或者我是否遗漏了某个东西?
我注意到它在6.x 内核中仍然是这样的。 是否有任何计划来修复此错误?
(我可以通过显式设置模式来解决这一问题、但如果正确、可能节省了大量时间。)