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.

[参考译文] AM6548:AM6548 PRU+DP83822

Guru**** 2546000 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/935766/am6548-am6548-pru-dp83822

器件型号:AM6548

尊敬的 TI

我们使用 PRU2并通过 RGMII 接口连接到定制板上的 DP83822 PHY

链路向上/向下状态运行良好,

但我无法成功 ping PC

如何修改 RGMII 时钟延迟的器件树?

P/s:以下是我的 DTS 文件

icssg2_mdio{(&I)
状态="正常";
pinctrl-names ="default";
pinctrl-0 =<&icssg2_MDIO_PINS_DEFAULT>;
#address-cells =<1>;
#size-cells =<0>;

pruss2_eth0_phy:ethernet-phy@0{
reg =<0>;

????????
};

pruss2_eth1_phy:ethernet-phy@1{
reg =<1>;

????????
};

};

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

    Justin、

    您将需要配置 Rx 的内部延迟。

    >>>

    Rx-interne-delay-ps =<1>; 

    <<<

    Rx-interne-delay-ps:
    说明:|
    仅限 DP83822 PHY。
    将此属性设置为非零数字可设置 RX 内部延迟
    一个示例。 PHY 的内部延迟相对固定为3.5ns
    以接收数据。
    

    此致、

    Dave

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

    尊敬的 Dave Bell

    我的 SDK 版本为 ti-processor-sdk-linux-rt-am65xx-evm-07_00_00、内核版本为 v5.4

    我在 dp83822.c 驱动程序文件中找不到任何 API   

    P/S:驱动程序文件通常具有用于获取 DTS 参数的"of API"、如下所示

    RET = of _property_read_u32 (of _node、"ti、tx 内部延迟"、
    &dp83867->TX_id_delay);

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

    Justin、

    我向驱动程序所有者说明、并非所有 PHY 驱动程序都需要与它们关联的器件树条目、除非它们需要内部延迟等板级配置。  根据从 PHY 读取的 PHY_ID 加载 PHY 驱动程序、该 PHY 在 MAC 的 PHY_ADDR 中声明

    最近在 Linux-5.8.y 上行驱动程序中添加了 DP83822的内部延迟支持。  但在这种情况下、内部延迟"of API"由辅助函数处理

    https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/net/phy/dp83822.c?h=v5.9-rc3

    此致、

    Dave