SLUUDO2 September   2026 AM2611 , AM2612 , AM2612-Q1 , AM2631 , AM2631-Q1 , AM2632 , AM2632-Q1 , AM2634 , AM2634-Q1 , AM263P2 , AM263P2-Q1 , AM263P4 , AM263P4-Q1

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Acronyms
  5. 2Introduction
  6. 3Introduction to CPSWSS and ENET-LLD
    1. 3.1 Hardware
    2. 3.2 Software
    3. 3.3 Application Software
      1. 3.3.1 Board and Peripherals Initialization (SYSCFG)
      2. 3.3.2 CPSW Configuration (ENET-LLD)
      3. 3.3.3 Operating System (FreeRTOS or NoRTOS)
      4. 3.3.4 Middleware Stack (LwIP, Arm® Mbed™ Platform TLS, TSN)
      5. 3.3.5 Application Layer
  7. 4Debugging Hardware and Software
    1. 4.1 Hardware Debugging
      1. 4.1.1 Schematic Review Checklist
        1. 4.1.1.1 Management Data Input/Output (MDIO and MDC)
        2. 4.1.1.2 RGMII Interface
      2. 4.1.2 PHY Debug
        1. 4.1.2.1 PHY Bootstrap Settings
        2. 4.1.2.2 Trace Length
        3. 4.1.2.3 Clock Configuration
        4. 4.1.2.4 Mode Settings
        5. 4.1.2.5 IO MUX and SW Switch Settings
        6. 4.1.2.6 PHY Troubleshooting Guides
        7. 4.1.2.7 Custom Pin MUX Settings
      3. 4.1.3 Test Setup
      4. 4.1.4 Software Debugging
        1. 4.1.4.1 Using GEL Scripts in CCS
          1. 4.1.4.1.1 Statistics Using GEL Scripts
          2. 4.1.4.1.2 Statistics Using Expressions
      5. 4.1.5 Debugging Custom Ethernet Software
        1. 4.1.5.1 Debugging Initialization Sequence
        2. 4.1.5.2 PHY Debugging
        3. 4.1.5.3 MAC Port Debugging
        4. 4.1.5.4 TX Path Debugging
        5. 4.1.5.5 Systematic Debugging Checklist
          1. 4.1.5.5.1 RX Path Debugging
          2. 4.1.5.5.2 Multicast or Broadcast Does Not Work, But Unicast Works
    2. 4.2 Custom Hardware Bring-Up Process
      1. 4.2.1 Example 1: CPSW PHY Loopback
        1. 4.2.1.1 Failure: PHY Not Detected or MDIO Bus Not Alive
        2. 4.2.1.2 Failure: TX Packets Transmitted But RX Count = 0
      2. 4.2.2 Example 2: CPSW MAC Loopback Example
        1. 4.2.2.1 Failure: MAC Loopback Initialization Fails
        2. 4.2.2.2 Failure: TX Packets Increase But RX = 0
        3. 4.2.2.3 Failure: Nonzero Error Counters
      3. 4.2.3 Example 3: Enet_Layer2_CPSW and Enet_Layer2_cpsw_switch
        1. 4.2.3.1 Hardware Setup
        2. 4.2.3.2 Failure: Link Never Comes UP
        3. 4.2.3.3 Failure: Link is Up But No Frames Are Received or Transmitted
        4. 4.2.3.4 Failure: RX and TX Counters Increase But Error Rates Are High
      4. 4.2.4 Example 4: Enet_lwip_cpsw_example
        1. 4.2.4.1 Failure: Link Never Comes Up
        2. 4.2.4.2 Failure: Links Up But No IP Address Is Assigned
        3. 4.2.4.3 Failure: Ping Fails Despite Link and IP Address
    3. 4.3 Debugging Packet Forwarding Issues (ALE and Statistics)
      1. 4.3.1 CPSW Statistics Architecture
        1. 4.3.1.1 What Each Block Measures
        2. 4.3.1.2 Counter Reference Tables
          1. 4.3.1.2.1 MAC Port – RX Counters
          2. 4.3.1.2.2 MAC Port – TX Counters
          3. 4.3.1.2.3 MAC Port and Host Port – ALE and FIFO Drop Counters
          4. 4.3.1.2.4 Host Port – ALE Flood and Overrun Counters
          5. 4.3.1.2.5 MAC Port RX Issues
          6. 4.3.1.2.6 MAC Port TX Issues
          7. 4.3.1.2.7 Host Port RX Issues
          8. 4.3.1.2.8 Host Port TX Issues
    4. 4.4 Custom Board Enablement in SYSCFG
    5. 4.5 LwIP Debug Guide
      1. 4.5.1 LwIP Stack Configuration
      2. 4.5.2 lwip_stats
  8. 5Conclusion
  9. 6References

PHY Bootstrap Settings

Bootstrap (strapping) pins configure the PHY behavior during power-up, before any MDIO communication occurs. These pins are sampled once at power-on or reset, with the logic levels determined by external resistors. Getting bootstrap configuration incorrect is a common cause of Ethernet failures that are difficult to diagnose.

Common Bootstrap Settings:

  • PHY Address: Sets the MDIO address (typically 0-31). The address must match the address that the software expects. Verify the software configures the PHY address that is bootstrapped in the hardware.
    • AM2612 AM2611 AM2634 AM2632 AM2631 AM263P4 AM263P2 AM263P4-Q1 AM263P2-Q1 AM2612-Q1 AM2634-Q1 AM2632 PHY Address
                                    Configuration Figure 4-1 PHY Address Configuration
  • Interface Mode: Selects RGMII, RMII, MII, and so forth. The interface mode must match the MAC configuration.
    • AM2612 AM2611 AM2634 AM2632 AM2631 AM263P4 AM263P2 AM263P4-Q1 AM263P2-Q1 AM2612-Q1 AM2634-Q1 AM2632 Pin MUX
                                    Configuration Figure 4-2 Pin MUX Configuration

Common Issues:

  • Wrong resistor values: Using 4.7k instead of 10k can result in marginal logic levels that fail intermittently or at temperature extremes.
  • Floating pins: Missing pull-up resistors cause undefined behavior. Some Ethernet PHYs have weak internal pullups, and these pull-up resistors are unreliable.
  • Incorrect pullup direction: A pullup occurs where a pulldown is required and puts the PHY in the wrong mode entirely.

Verification Steps:

  1. Check the bootstrap table of the PHY in the appropriate datasheet. Compare the required resistor values and configurations against the appropriate schematic.
  2. Measure bootstrap pin voltages during power-up with an oscilloscope or multimeter. Verify the voltages reach valid logic high (>2.0V) or low (<0.8V) levels.
  3. Read the PHY configuration registers through the MDIO after initialization. Compare the actual mode (interface type, address) against the expected values.
  4. If the bootstrap settings are incorrect, check for schematic errors, incorrect resistor population, or PCB shorts or opens.

Bootstrap Versus MDIO Conflicts:

Some PHY configuration parameters can only be set using bootstrap and are locked after power-up. Interface mode selection (RGMII, RMII, MII) is typically bootstrap-only. If software attempts to configure these parameters differently through MDIO, the PHY silently ignores the writes, creating a mismatch between software expectations and actual hardware state.

Debug Approach:

  • Read back the PHY registers after MDIO configuration to verify writes took effect.
  • Compare bootstrap-configured interface mode against software configuration.
  • Check if MDIO writes to read-only registers are returning unexpected values.
  • Verify PHY datasheet specifies which settings are bootstrap-only versus MDIO-configurable.

Auto-negotiation Bootstrap:

Many PHYs provide bootstrap pins to enable or disable auto-negotiation or force specific speeds (10Mbps, 100Mbps, or 1000Mbps). Incorrect bootstrap configuration can disable auto-negotiation when software expects that auto-negotiation is enabled, or force a speed incompatible with the link partner. This manifests as a link never establishing or establishing at the wrong speed.

Debug Approach:

  • Read the PHY basic control register (register 0x00) to verify the current auto-negotiation state.
  • Check if the auto-negotiation complete bit is set in the basic status register (0x01).
  • Verify bootstrap matches the auto-negotiation configuration of the software.
  • Test with forced speed or duplex on both link partners to isolate auto-negotiation issues.
  • The CPSW3G variant supports two external MAC ports, each requiring a PHY with a unique MDIO address. Each PHY must be bootstrapped to a different address (typically 0 and 1, or 0 and 3). Common failures occur when both PHYs share the same bootstrap address, causing MDIO bus collisions where both PHYs respond simultaneously, corrupting read data.
  • Read the PHY ID registers (0x02, 0x03) at each expected address and verify the correct PHY responds (refer to section xx.xx to learn how to read PHY registers).
  • Check if an unexpected PHY responds at the wrong address (indicates incorrect bootstrap).
  • Use the MDIO bus analyzer or scope to detect multiple PHYs driving the bus simultaneously.
  • Verify bootstrap resistors are independent for each PHY, not shared on same net.
  • Confirm the software MDIO address configuration matches the PHY bootstrap addresses.