主题中讨论的其他器件:ADS7828
设置:
使用 OSD3358-SM 处理器的定制板。 我每个 DP86837芯片有2个、一个为0、另一个为1 (使用适当的自举、但只尝试先获取0)。 我将使用最新的 Bone Debian OS for ARM 9.9内核4.14。 我将板 ID 设置为 BeagleBone Black A335BNLT。 我创建了自己的覆盖层,以使用 I2C 和 SPI 总线以及 tlv320.... 音频编解码器芯片。 我在论坛、文档等之后参考了论坛 我还没有看到 MDIO 将驱动程序报告为 DP86837。 驱动程序(ko)位于操作系统中。 除了以太网外、我的覆盖层适用于所有其他应用。 当我连接以太网并检查 dmesg (通过 SSH 通过 USB 进入我的主板)时、它会显示为高达1Gbps、但驱动程序显示为通用 PHY、并且我无法通过以太网 ping 或 SSH 到我的 proto 主板。 它就像内核读取 reg 并返回正确的信息、但它没有100%配置。
我在/etc/network/interfaces 中将 eth0设置为静态、并设置了地址和网络掩码。
下面是我的器件树 DTS 文件的一个片段(编译时没有问题)。
&cpsw_emac0{ phy_id =<&Davinci_mdio>、<0>; phy_handle =<&dp83867_0>; phy-mode ="RGMII-txid"; }; &Mac{ pinctrl-names ="default"、"sleep"; pinctrl-0 =<&cpsw_default>; pinctrl-1 =<&cpsw_sleep>; 从器件=<1>; 状态="确定"; } ;&Davinci_MDIO{ pinctrl-names ="默认值"、"睡眠"; compatible ="ti、cpsw-MDIO"、"ti、Davinc_MDIO"; pinctrl-0 =<&Davinc_MDIO_default>; pinctrl-1 =<&Davinc_MDIO_SLEEP>; status ="确定"; dp83867_0:ethernet-phy@0{ reg =<0>; ti、rx-interne-delay = ; ti、tx 内部延迟= ; ti, fifo-depth = ; }; };
正如我所理解的...是的、u-boot 将配置为电路板 ID。 但是、内核加载后、我的覆盖应该会证实我的覆盖中的更改。 因此引入了用于以太网配置的驱动程序。 例如、在我的覆层中、我使用 ADS7828并激活覆层中的驱动程序、然后作为模块($ lsmod)出现。
我的问题:
1.能否使用 BeagleBone Black 板 ID 作为基线并使用覆盖层使用 DP83867 IC 进行整合?
2.从我的底座到甚至可以达到1Gbps 的速率,它必须自动协商到该速率,任何主要问题都将使其保持在10Mbps 的速率?
3.为什么系统日志中没有显示驱动程序,我认为它将显示为 MDIO 和 cpsw 的驱动程序?
4.我是否真的需要在 u-boot 文件中配置我自己的电路板 ID、其他所有内容都将出现并可在 syslog 中进行验证、或者通过读取/写入其寄存器来进行验证?
5.我为我的镀层引用了 dra71-EVM.dts、是否有另一个使用 DP86837以太网 IC 的 EVM 或镀层?
我将看到我是否可以获取 syslog 信息并明天将其粘贴到这里。