AM243x MCU+ SDK  08.03.00
PCIE legacy IRQ RC

Introduction

The PCIe legacy interrupt (RC) example demonstrates an EP device interrupting RC device.

The RC device sends a buffer to the EP device, and the EP device loops back the same buffer to RC and sends a legacy interrupt to RC. RC device will wait for the interrupt from EP and validates the buffer transfer by comparing the buffer received from EP with the original source buffer.

Supported Combinations

Parameter Value
CPU + OS r5fss0-0_freertos
Toolchain ti-arm-clang
Board am243x-evm
Example folder examples/drivers/pcie/pcie_legacy_irq/pcie_legacy_irq_rc

Steps to Run the Example

Build the example

  • When using CCS projects to build, import the CCS project for the required combination and build it using the CCS project menu (see Using SDK with CCS Projects).
  • When using makefiles to build, note the required combination and build using make command (see Using SDK with Makefiles)

HW Setup

Note
Make sure you have setup the EVM with cable connections as shown here, EVM Setup. In addition do below steps.

AM243-EVM

  • For connecting two board in RC and EP mode a specialized cable as below is required
  • This cable can be obtained from Adex Electronics (https://www.adexelec.com).
  • Modify the cable to remove resistors in CK+ and CK- in order to avoid ground loops (power) and smoking clock drivers (clk+/-).
  • The ends of the modified cable should look like below:
    • A side

      PCIe cable A side end 1
      PCIe cable A side end 2
    • B side

      PCIe cable B side end 1
      PCIe cable B side end 2

Run the example

  • Launch a CCS debug session and run the example executable, see CCS Launch, Load and Run
  • Run the PCIE legacy IRQ EP example on the other connected board
  • You will see logs in the UART terminal as shown in the next section.

See Also

PCIE

Sample output

Device in RC mode
Endpoint Device ID: 100X
Endpoint Vendor ID: 17CDX
All tests have passed!!