在本文中,我们将深入探讨如何在 Rockchip SoC 上使用设备树(DTS)来配置以太网接口。通过详细的代码示例和配置说明,我们将指导您完成网络接口的设置,确保您的嵌入式 Linux 系统能够高效地进行网络通信。
Rockchip SoC 以太网接口概述
Rockchip SoC 通常包含多个以太网 MAC 接口,可以通过 RGMII 或其他接口连接到外部 PHY 芯片。本节将概述这些接口的基本特性。
设备树配置详解
我们将通过一个具体的设备树配置示例,展示如何配置两个以太网 MAC 接口 gmac0
和 gmac1
。
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
&g