ZHCAES5 July   2024 DP83822H , DP83822HF , DP83822I , DP83822IF , DP83826E , DP83826I , DP83848-EP , DP83848Q-Q1 , DP83867CR , DP83867CS , DP83867E , DP83867IR , DP83867IS , DP83TC812R-Q1 , DP83TC812S-Q1 , DP83TC813R-Q1 , DP83TC813S-Q1 , DP83TC814R-Q1 , DP83TC814S-Q1 , DP83TG720R-Q1 , DP83TG720S-Q1 , DP83TG721R-Q1 , DP83TG721S-Q1

 

  1.   1
  2.   摘要
  3.   商标
  4. 1德州仪器 (TI) 以太网 PHY 驱动程序
  5. 2以太网 PHY 驱动程序概述
    1. 2.1 了解 Linux 驱动程序类型
      1. 2.1.1 U-Boot 驱动程序
      2. 2.1.2 内核驱动程序
  6. 3驱动程序集成
    1. 3.1 Linux 器件树
    2. 3.2 集成式驱动程序
  7. 4常见终端命令
    1. 4.1 初始化命令
      1. 4.1.1 dmesg | grep -i mdio
      2. 4.1.2 ifconfig
    2. 4.2 功能命令
      1. 4.2.1 Phytool
      2. 4.2.2 ethtool
      3. 4.2.3 强制执行主/从配置
    3. 4.3 诊断命令
      1. 4.3.1 SQI
      2. 4.3.2 TDR
      3. 4.3.3 吞吐量测试 - ping 和 iPerf
  8. 5总结
  9. 6参考资料

集成式驱动程序

本节介绍如何将驱动程序(newDriver.c,其中 newDriver 是以太网 PHY)添加到 Linux 系统上的 SDK 中,该系统缺少这一驱动程序或使用了过时的版本。

在 SDK 中,找到 Linux 内核目录 (LKD)。文件路径示例如下所示:

SDK_Install_Directory/board-support/TI-linux-kernel/

在该示例中,TI-Linux-kernel 是 LKD。从这里可以导航至:

LKD/drivers/net/phy/
将 newDriver.c 复制到该目录中。同一个目录中有 MakefileKconfig,这两个文件都需要编辑才能生成 newDriver.c。

编辑 Makefile

将以下代码行添加到 Makefile。请注意,赋值是 newDriver.o 而非 newDriver.c

obj-$(CONFIG_newDriver_PHY)    += newDriver.o

编辑 Kconfig

然后,将以下代码行添加到 Kconfig。

config newDriver PHY
    tristate "<Insert Company name> newDriver PHY"
    --help--
        Supports the newDriver PHY.
编辑 Makefile 和 Kconfig 文件后,返回到 LKD。从这里转到:
LKD/arch/arm64/configs
注: 如果您的处理器是 32 位而不是 64 位,请进入“arm”文件夹,而非“arm64”。

在此处可找到 defconfig 文件,添加以下代码行:

CONFIG_newDriver_PHY = y
命名约定 CONFIG_newDriver_PHY 需要与 Makefile 中设置的内容相匹配。

从这里可以返回到 SDK 安装目录并在终端上运行 make 命令。

注: 并非所有内核都可以通过运行 make 生成,请参阅 SDK 文档以了解生成内核、u-boot 和 dtb 文件的正确步骤。