SNLA450 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.   Abstract
  3.   Trademarks
  4. 1Texas Instruments Ethernet PHY Drivers
  5. 2Ethernet PHY Driver Overview
    1. 2.1 Exploring Linux Driver Types
      1. 2.1.1 U-Boot Driver
      2. 2.1.2 Kernel Driver
  6. 3Driver Integration
    1. 3.1 Linux Device Tree
    2. 3.2 Integrating Driver
  7. 4Common Terminal Commands
    1. 4.1 Initialization Commands
      1. 4.1.1 dmesg | grep -i mdio
      2. 4.1.2 ifconfig
    2. 4.2 Functional Commands
      1. 4.2.1 Phytool
      2. 4.2.2 Ethtool
      3. 4.2.3 Forced Master/Slave
    3. 4.3 Diagnostic Commands
      1. 4.3.1 SQI
      2. 4.3.2 TDR
      3. 4.3.3 Throughput Testing - Ping and iPerf
  8. 5Summary
  9. 6References

Driver Integration

Integrating a driver into a Linux system involves several key steps to provide seamless compatibility and functionality. Initially, developers must compile the driver code to generate a loadable kernel module or incorporate the code directly into the kernel (the latter is preferred for faster PHY recognition during MDIO probe).

The following sections describe the process in greater detail with the following setup. The J721EXCPXEVM common processor board is used with the J721EXSOMG01EVM TDA4VM and DRA829V socketed system on module. The Linux-RT SDK is used to evaluate Linux Kernel version 5.10 on the board. The common processor board natively has one Ethernet port, using the DP83867E Ethernet PHY. A plug in daughter card with four additional Ethernet ports is plugged into the common processor board's EVM expansion connector, where the drivers for the Ethernet PHYs are not included in the processor's SDK.