This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] DP83867CR:u-boot 中的以太网 PHY

Guru**** 2540720 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1320625/dp83867cr-ethernet-phy-in-u-boot

器件型号:DP83867CR

您好、TI 团队:  

我们将 Phy DP83867与 RZG2UL 一起使用、在 u-boot 中启用它时遇到问题。

设置这些文件、在 u-boot 配置下、

CONFIG_PHY=y
CONFIG_PHY_TI=y
CONFIG_PHY_TI_DP83867=y
CONFIG_MII=y
CONFIG_DM_ETH_PHY=y
CONFIG_PHY_FIXED=y
CONFIG_CMD_NET=y
CONFIG_NET_RANDOM_ETHADDR=y
CONFIG_BITBANGMII=y
CONFIG_DM_ETH=y



DTS 节点如下。
&eth0 {
        pinctrl-0 = <&eth0_pins>;
        pinctrl-names = "default";
        phy-handle = <&ethphy0>;
        phy-mode = "rgmii-id";
        status = "okay";

        mdio {
                #address-cells = <1>;
                #size-cells = <0>;

                ethphy0: ethernet-phy@0 {
                        compatible = "ethernet-phy-ieee802.3-c22";
                        reg = <0x0>;
                        ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
                        ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
                        ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
                        ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>;
                        enet-phy-lane-no-swap;
                };
        };
};

 eth0_pins: eth0 {
                pinmux = <RZG2L_PINMUX(4, 3, 1)>, /* ET0_MDC */
                         <RZG2L_PINMUX(4, 4, 1)>, /* ET0_MDIO */
                         <RZG2L_PINMUX(1, 0, 1)>, /* ET0_TXC */
                         <RZG2L_PINMUX(1, 1, 1)>, /* ET0_TX_CTL */
                         <RZG2L_PINMUX(1, 2, 1)>, /* ET0_TXD0 */
                         <RZG2L_PINMUX(1, 3, 1)>, /* ET0_TXD1 */
                         <RZG2L_PINMUX(1, 4, 1)>, /* ET0_TXD2 */
                         <RZG2L_PINMUX(2, 0, 1)>, /* ET0_TXD3 */
                         <RZG2L_PINMUX(3, 0, 1)>, /* ET0_RXC */
                         <RZG2L_PINMUX(3, 1, 1)>, /* ET0_RX_CTL */
                         <RZG2L_PINMUX(3, 2, 1)>, /* ET0_RXD0 */
                         <RZG2L_PINMUX(3, 3, 1)>, /* ET0_RXD1 */
                         <RZG2L_PINMUX(4, 0, 1)>, /* ET0_RXD2 */
                         <RZG2L_PINMUX(4, 1, 1)>; /* ET0_RXD3 */
        };



下面给出的日志。
WDT:   watchdog@0000000012800800
WDT:   Started with servicing (60s timeout)
MMC:   sd@11c00000: 0, sd@11c10000: 1
Loading Environment from SPIFlash... SF: Detected at25sf321 with page size 256 Bytes, erase size 4 KiB, total 4 MiB
OK
In:    serial@1004bc00
Out:   serial@1004bc00
Err:   serial@1004bc00
Model: sm2s-rzg2ul
sm2s board late init...
U-boot WDT started!
Net:   No ethernet found.
 
Hit any key to stop autoboot:  0 
=>  
=> 
=> mii info
PHY 0x00: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x01: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x02: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x03: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x04: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x05: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x06: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x07: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x08: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x09: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x0A: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x0B: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x0C: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x0D: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x0E: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x0F: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x10: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x11: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x12: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x13: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x14: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x15: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x16: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x17: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x18: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x19: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x1A: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x1B: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x1C: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x1D: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x1E: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x1F: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
=> print ethaddr 
ethaddr=EA:17:DF:1B:EC:6A
=> 


请指导我们如何在 u-boot 中启用 PHY。




谢谢。此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ishan:

    设备树看起来不错。 器件上绑定了什么 PHY 地址?

    此外、驱动程序文件的源是什么?

    如果 PHY 处于活动状态、MDC/MDIO 连接有效、并且 PHY 地址正确(0x0)、我希望器件在 uboot 中正确加载。

    谢谢!

    埃文

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Evan、

    感谢您的支持、问题来自 soc 方面、我们解决了。

    谢谢。此致、
    一山市