我有一个带有飞思卡尔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链接已启动)。 我能想到这种行为有两个原因。
鉴于上述情况,以太网交换机仍然可以使用DSA驱动程序工作吗?
此外,我尝试使用Processor的内部PHY将其连接到eth0但不能。不知何故,gianfar以太网驱动程序总是找不到外部PHY。即使在dts文件中定义了“fixed-link”属性,它也永远不会寻找内部PHY。在我的设计中, MDC 和 MDIO 处理器系列也连接到Switch。在用于切换PHYless MAC-MAC连接的处理器中,它是否会创建2个Masters?这些应该断开吗?是因为MDC / MDIO连接我无法访问P1010处理器的内部PHY吗?