![]() |
![]() |
This document describes the Low Level Driver (LLD) for the Peripheral Component Interconnect Express (PCIe).
The PCI Express module supports dual operation mode: End Point (EP or Type0) or Root Complex (RC or Type1). This driver focuses on EP mode but it also provides access to some basic RC configuration/functionalities.
The PCIe userguide can be found at <http://www.ti.com/lit/sprugs6a>.
The PCIe subsystem has two address spaces. The first (Address Space 0) is dedicated for local application registers, local configuration accesses and remote configuration accesses. The second (Address Space 1) is dedicated for data transfer.
The PCIe driver focuses on the registers for Address Space 0.
Throughout the LLD, the registers/APIs are grouped into the following:
The normal sequence of events to enable the peripheral is listed below.
There is a C code example in ti/drv/pcie/example/sample.
In order to check that all values are within bounds, the LLD can be recompiled with the -Dpcie_DEBUG compiler flag. This will ensure that all values passed to writes fit within their assigned bitfields.