Rockchip SoC 以太网设备树配置指南linux

在本文中,我们将深入探讨如何在 Rockchip SoC 上使用设备树(DTS)来配置以太网接口。通过详细的代码示例和配置说明,我们将指导您完成网络接口的设置,确保您的嵌入式 Linux 系统能够高效地进行网络通信。

Rockchip SoC 以太网接口概述

Rockchip SoC 通常包含多个以太网 MAC 接口,可以通过 RGMII 或其他接口连接到外部 PHY 芯片。本节将概述这些接口的基本特性。

设备树配置详解

我们将通过一个具体的设备树配置示例,展示如何配置两个以太网 MAC 接口 gmac0gmac1

gmac0 配置

&gmac0 {
    // 配置 RGMII 模式并禁用 SoC 内部的接收延迟
    phy-mode = "rgmii-rxid";
    // 设置时钟信号由 SoC 输出
    clock_in_out = "output";

    // 使用 GPIO3 的 RK_PB7 作为 PHY 复位引脚,低电平有效
    snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
    // 复位延迟设置
    snps,reset-delays-us = <0 20000 100000>;

    // 引脚控制配置
    pinctrl-names = "default";
    pinctrl-0 = <&gmac0_miim
                 &gmac0_tx_bus2
                 &gmac0_rx_bus2
                 &gmac0_rgmii_clk
                 &gmac0_rgmii_bus>;

    // 设置传输延迟
    tx_delay = <0x33>;
    // 关联 RGMII PHY0
    phy-handle = <&rgmii_phy0>;
    status = "okay";
};

gmac1 配置

&gmac1 {
    // 同 gmac0,配置 RGMII 模式并禁用接收延迟
    phy-mode = "rgmii-rxid";
    clock_in_out = "output";

    // 使用 GPIO2 的 RK_PC3 作为 PHY 复位引脚,高电平有效
    snps,reset-gpio = <&gpio2 RK_PC3 GPIO_ACTIVE_HIGH>;
    // 复位延迟设置
    snps,reset-delays-us = <0 20000 100000>;

    // 引脚控制配置
    pinctrl-names = "default";
    pinctrl-0 = <&gmac1_tx_bus2
                 &gmac1_rx_bus2
                 &gmac1_rgmii_clk
                 &gmac1_rgmii_bus>;

    // 设置不同的传输延迟
    tx_delay = <0x1c>;
    // 注释掉的 phy-handle 表示可能不需要手动指定
    // phy-handle = <&rgmii_phy1>;
    status = "okay";

    // 固定链路配置
    fixed-link {
        status = "okay";
        speed = <1000>;
        full-duplex;
    };
};

 

配置注意事项

在配置设备树时,请注意以下几点:

  • 确保所有 GPIO 引脚和 PHY 句柄与您的硬件设计相匹配。
  • 根据需要调整传输和接收延迟设置。
  • 如果使用固定链路配置,请确保链路状态、速度和双工模式设置正确。
结论

通过本文的指导,您应该能够为您的 Rockchip SoC 系统配置以太网设备树。正确的设备树配置对于确保网络接口的稳定运行至关重要。

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YfovikC9 

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值