我有一个带有飞思卡尔 P1010 处理器的定制板,其中 P1010 的 eTSEC2(增强型 3 速以太网控制器)端口在 SGMII 模式下直接连接到 Marvell 88E6046 以太网交换机端口 9。
Linux (3.17) DSA 驱动程序能够探测和检测交换机(端口 9 是“cpu”,而端口 0 和 1 被指定为“lan1”和“lan2”)。然而问题是,没有可供交换机连接的 PHY(“ifconfig up”无法连接到 ethx)。 U-boot 创建一个“通用 PHY”eth0,因为它发现有某个东西(交换机)连接到处理器 P1010,但是当 Linux 启动并且交换机连接到这个“通用 PHY”(eth0)时,我无法 ping 它( lan1或 lan2,尽管 DSA 链路已启动)。
我认为这种行为有两个原因。
- 交换机端口 9 在 SGMII 模式下直接连接到处理器 MAC,但中间没有任何外部 PHY。
- 即使直接连接交换机,它也不会配置为“反向 MII”模式,因此不会检测到端口 9 处的内部 PHY。
鉴于上述情况,以太网交换机是否仍然可以使用 DSA 驱动程序工作?
我还尝试使用处理器的内部 PHY 将其连接到 eth0,但失败了。不知怎的,gianfar以太网驱动程序总是找到外部PHY,而没有。即使在 dts 文件中定义了“固定链路”属性,它也不会查找内部 PHY。也在我的设计中MDC and MDIO处理器线连接到交换机。在切换 PHYless MAC-MAC 连接的处理器中,它是否创建 2 个主设备?这些应该被断开吗?是否因为 MDC/MDIO 连接而无法访问 P1010 处理器的内部 PHY?
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)