SPRADH9 June   2024 AM6442

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Abbreviations
  5. 2Introduction
    1. 2.1 Peripheral Component Interconnect Express
      1. 2.1.1 Components of PCIe Communication
        1. 2.1.1.1 Root Complex
        2. 2.1.1.2 Repeater
        3. 2.1.1.3 Endpoints
      2. 2.1.2 Signaling
        1. 2.1.2.1 PERST
        2. 2.1.2.2 WAKE and CLKREQ
        3. 2.1.2.3 REFCLK
      3. 2.1.3 PCIe Common Usage
      4. 2.1.4 PCIe Aggregate Throughput
    2. 2.2 PCIe Features on AM64x and AM243x
  6. 3X86 as RC and AM64x as EP
    1. 3.1 Hardware Environment
    2. 3.2 Software Environment
      1. 3.2.1 Building Application
      2. 3.2.2 Usage
  7. 4Test Setup
    1. 4.1 Common Setup for LINUX and WIN
    2. 4.2 Linux Driver (VFIO)
      1. 4.2.1 Prerequisites
      2. 4.2.2 Building
      3. 4.2.3 Deploying
    3. 4.3 Test Application Usage
    4. 4.4 Setup Steps for LINUX PC
      1. 4.4.1 UART Console Output
    5. 4.5 MSI Example
    6. 4.6 Setup Steps for WINDOWS PC
      1. 4.6.1 Prerequisites
      2. 4.6.2 Building
      3. 4.6.3 Deploying
  8. 5PCIe Test Specification
    1. 5.1  Identification and Configuration Functionalities
      1. 5.1.1 Test Case
    2. 5.2  Reference Clock Functionalities
    3. 5.3  Inbound ATU and BAR Functionalities
    4. 5.4  Outbound ATU Functionalities
    5. 5.5  MSI Functionality
    6. 5.6  Downstream Interrupt Functionality
    7. 5.7  Device Power Management State Functionality
    8. 5.8  Function Level Reset Mechanism
    9. 5.9  Legacy Interrupt Mechanism
    10. 5.10 MSI-X Capability
    11. 5.11 Hot Reset Mechanism
  9. 6Windows Example Driver Verification
  10. 7References

Test Case

Test

Description:

Test to verify if desired PCIe vendor ID, device ID, subsystem ID and subsystem vendor ID can be set and configured correctly in the TMDS243EVM PCIe EP.

Execution:

  1. Configure desired IDs via Sysconfig, and so on.
    1. Vendor ID:0xAAAA
    2. Device ID: 0xBBBB
    3. Subsystem Vendor ID: 0xCCCC
    4. Subsystem ID: 0xDDDD
    AM6442
  2. Determine the PCIe EP bus-, device- and function number and verify the configured IDs in Linux terminal, and so on.:
    sudo lspci -vn -s 4:00.0
    AM6442

The desired IDs is displayed as configured in Sysconfig.

Test

Description:

Test to verify if a desired PCIe class code, sub-class code, the programming interface and the revision-ID can be set and configured correctly in the PCIe EP.

Just for testing purposes. the base class code needs to be set as Input device (09h) with a sub-class code set as Gameport controller (10h) and a programming interface set to 10h. The revision ID needs to be set to 03h.

For additional information regarding the encoding of above parameter refer to PCI Code and ID Assignment Specification as published by PCI-SIG.

Execution:

  1. Configure desired settings through Sysconfig.
    1. Class Code: 0x09
    2. Sub-Class Code:0x04
    3. Programming Interface: 0x10
    4. Revision ID: 0x03
    AM6442
  2. Determine the PCIe EP bus-, device- and function number and verify the configured settings in Linux terminal, and so on:
    sudo lspci -vnn -s 4:00.0
AM6442

The desired parameter is displayed as configured in Sysconfig.