SPRADH8 September   2024 AM6442

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. Introduction
    1. 1.1 AM64x and AM243x EVMs
    2. 1.2 SoC Architecture
      1. 1.2.1 AM64x
      2. 1.2.2 AM243x
    3. 1.3 Peripherals
      1. 1.3.1 CPSW3G
      2. 1.3.2 PRU-ICSSG
    4. 1.4 Ethernet Software Architecture
    5. 1.5 Prerequisite
      1. 1.5.1 HW Prerequisite
      2. 1.5.2 SW Prerequisite
        1. 1.5.2.1 Resource Allocation - AM64x
        2. 1.5.2.2 SBL update
  5. Multicore 5-Ethernet Ports Realization
  6. Supported Configurations on PRU-ICSSG
  7. Implementation
    1. 4.1 System Example
      1. 4.1.1 Software Architecture
      2. 4.1.2 5-Ethernet Port Example
  8. Debug Steps
  9. Reference Logs
  10. Testing for the ICSSG0 and ICSSG1 Functionality
  11. ICSSG and CPSW
  12. Summary
  13. 10References

Implementation

A SEM extension card on HSE port was used for adding two additional Ethernet ports for ICSSG0 and two Ethernet ports for the existing ICSSG1 Ethernet port. These four ICSSG Ethernet ports are controlled by R5FSS_0-0. This is enabled by ICSSG0 and ICSSG1 implementation. For more information, see the Ethernet PRU_ICSSG Instance-0 (PRU_ICSSG0) Usage Guide.

Users can release up to four Ethernet ports using ICSSG0 and ICSSG1. This can be either:

  • 2-pairs of (2-port Ethernet switch mode),
  • or four Ethernet ports in MAC mode,
  • or any other combination.

This particular implementation uses all four Ethernet ports of ICSSG. A user can configure two Ethernet ports from ICSSG0 and one to ISSG1.

Driver that controls CPSW shall run on R5FSS_0-1 CPU core controls a single Ethernet port in MAC mode. This implementation can be changed based on requirements and can operate two on-board RGMII Ethernet ports.

Both the cores communicate over the IPC.

AM6442 SysConfig: IPC settingsFigure 4-1 SysConfig: IPC settings
CAUTION:

Note that the system project is required to run and trigger the IPC-related code inclusions.

IPC Examples must be build as System Projects. Single core build fails since IPC code generation depends on all core contexts in the application.