P2020 PCIe Model

This section describes the P2020 PCIe controller model.

The PCI Express controller can function as either a root complex (RC) or an endpoint (EP) on the PCI Express link.

The PCI Express interface supports the following register types:

  • Memory-mapped registers-these registers control PCI Express address translation, PCI error management, PCI Express configuration register access.

  • PCI Express configuration registers contained within the PCI Express configuration space-these registers are specified by the PCI Express specification for every PCIExpress device.

PCIe Bus contains information about connected to it EP-devices and PCIe bridge (RC device). There are two configuration header types applicable to PCI Express. Type 0 headers are typically used by endpoints, Type 1 headers are used by root complexes and switches/bridges.

Loading the Plugin

import P2020

Configuration

Every RC or EP device should be connected to a bus PCIe devices array via PCIDevIface interface, buses should be connected via PCIeBusIface to PCIe model. All buses (exept the main upstream bus0) should have a pcie bridge as a parent device. Each PCIe device, including bridges, should point to the primary bus it is connected to, bridges should also point to the secondary bus immediately downstream of the bridge.

Setting PCIe buses and devices via API
// connect devices to buses
temu_connect(upstreamBus, "pcieDevices", pciebridge, "PCIDevIface");
temu_connect(downstreamBus, "pcieDevices", pciedev, "PCIDevIface");

// connect buses to the pcie model
temu_connect(pcie, "pcieBuses", upstreamBus, "PCIeBusIface");
temu_connect(pcie, "pcieBuses", downstreamBus, "PCIeBusIface");

// add upstream bridge to the bus model
temu_writeValue(downstreamBus, "parentBridge", temu_makePropObj(pciebridge), 0);

// set primary & secondary buses for devices
temu_writeValue(pciedev, "primaryBus", temu_makePropObj(downstreamBus), 0);
temu_writeValue(pciebridge, "primaryBus", temu_makePropObj(upstreamBus), 0);
temu_writeValue(pciebridge, "secondaryBus", temu_makePropObj(downstreamBus), 0);
Setting PCIe buses and devices via Command Line
# connect devices to buses
connect a=upstreamBus.pcieDevices b=pciebridge:PCIDevIface
connect a=downstreamBus.pcieDevices b=pciedev:PCIDevIface

# connect buses to the pcie model
connect a=pcie.pcieBuses b=upstreamBus:PCIeBusIface
connect a=pcie.pcieBuses b=downstreamBus:PCIeBusIface

# add upstream bridge to the bus model
downbus.parentBridge = pciebridge

# set primary & secondary buses for devices
pciedev.primaryBus = downstreamBus
pciebridge.primaryBus = upstreamBus
pciebridge.secondaryBus = downstreamBus

The PCIe programmable registers that occupy memory-mapped space are named according to P2020 QorIQ integrated processor reference manual. All the PCIe registers are 4-byte wide.

Setting registers via API
// Write Status & Command Register register from Configuration Space (device 0, bus 0, offset = 4) via CONFIG_ADDR/CONFIG_DATA registers
temu_writeValueU32(pcie, "PEX_CONFIG_ADDR", 0x80000004, 0);
temu_writeValueU32(pcie, "PEX_CONFIG_DATA", 0x02000000, 0);
// Value = 0x00000002 will be written to pcieConfigStatusCommand of the device0
Setting registers via Command Line
# Write Status & Command Register register from Configuration Space (device 0, bus 0, offset = 4) via CONFIG_ADDR/CONFIG_DATA registers
pcie.PEX_CONFIG_ADDR = 0x80000004
pcie.PEX_CONFIG_DATA = 0x02000000
# Value = 0x00000002 will be written to pcieConfigStatusCommand of the device0

@PCIe Reference

Properties

Name Type Description

Class

*void

Class object

Component

*void

Pointer to component object if part of component

LocalName

*char

Local name (in component, if applicable)

LogMessageFlags

uint64_t

Per-object log message suppression flags

LoggingFlags

uint64_t

Flags for logging info

Name

*char

Object name

ObjectID

uint64_t

Unique ObjectID.

ReplayLoggingFlags

uint64_t

Replay-time category logging flags

TimeSource

*void

Time source object

Commands

Name Description

delete

Dispose instance of @PCIe

new

Create new instance of PCIe

Command new Arguments

Name Type Required Description

name

string

yes

Name of object to create

PCIe Reference

Properties

Name Type Description

Class

*void

Class object

Component

*void

Pointer to component object if part of component

LocalName

*char

Local name (in component, if applicable)

LogMessageFlags

uint64_t

Per-object log message suppression flags

LoggingFlags

uint64_t

Flags for logging info

Name

*char

Object name

ObjectID

uint64_t

Unique ObjectID.

PEXITAR

[uint32_t; 3]

PCI Express inbound translation address register

PEXIWAR

[uint32_t; 3]

PCI Express inbound window attributes register

PEXIWBAR

[uint32_t; 3]

PCI Express inbound window base address register

PEXIWBEAR

[uint32_t; 3]

PCI Express inbound window base extended address register

PEXOTAR

[uint32_t; 5]

PCI Express outbound translation address register

PEXOTEAR

[uint32_t; 5]

PCI Express outbound translation extended address register

PEXOWAR

[uint32_t; 5]

PCI Express outbound window attributes register

PEXOWBAR

[uint32_t; 5]

PCI Express outbound window base address register

PEX_CONFIG

uint32_t

PCI Express configuration register

PEX_CONFIGColdResetValue

uint32_t

PCI Express configuration register

PEX_CONFIGForcedBits

uint32_t

PCI Express configuration register

PEX_CONFIGForcedFlippedBits

uint32_t

PCI Express configuration register

PEX_CONFIGReadMask

uint32_t

PCI Express configuration register

PEX_CONFIGResetMask

uint32_t

PCI Express configuration register

PEX_CONFIGResetValue

uint32_t

PCI Express configuration register

PEX_CONFIGWriteMask

uint32_t

PCI Express configuration register

PEX_CONFIG_ADDR

uint32_t

PCI Express configuration address register

PEX_CONFIG_ADDRColdResetValue

uint32_t

PCI Express configuration address register

PEX_CONFIG_ADDRForcedBits

uint32_t

PCI Express configuration address register

PEX_CONFIG_ADDRForcedFlippedBits

uint32_t

PCI Express configuration address register

PEX_CONFIG_ADDRReadMask

uint32_t

PCI Express configuration address register

PEX_CONFIG_ADDRResetMask

uint32_t

PCI Express configuration address register

PEX_CONFIG_ADDRResetValue

uint32_t

PCI Express configuration address register

PEX_CONFIG_ADDRWriteMask

uint32_t

PCI Express configuration address register

PEX_CONFIG_DATA

uint32_t

PCI Express configuration data register

PEX_CONFIG_DATAColdResetValue

uint32_t

PCI Express configuration data register

PEX_CONFIG_DATAForcedBits

uint32_t

PCI Express configuration data register

PEX_CONFIG_DATAForcedFlippedBits

uint32_t

PCI Express configuration data register

PEX_CONFIG_DATAReadMask

uint32_t

PCI Express configuration data register

PEX_CONFIG_DATAResetMask

uint32_t

PCI Express configuration data register

PEX_CONFIG_DATAResetValue

uint32_t

PCI Express configuration data register

PEX_CONFIG_DATAWriteMask

uint32_t

PCI Express configuration data register

PEX_CONF_RTY_TOR

uint32_t

PCI Express configuration retry timeout register

PEX_CONF_RTY_TORColdResetValue

uint32_t

PCI Express configuration retry timeout register

PEX_CONF_RTY_TORForcedBits

uint32_t

PCI Express configuration retry timeout register

PEX_CONF_RTY_TORForcedFlippedBits

uint32_t

PCI Express configuration retry timeout register

PEX_CONF_RTY_TORReadMask

uint32_t

PCI Express configuration retry timeout register

PEX_CONF_RTY_TORResetMask

uint32_t

PCI Express configuration retry timeout register

PEX_CONF_RTY_TORResetValue

uint32_t

PCI Express configuration retry timeout register

PEX_CONF_RTY_TORWriteMask

uint32_t

PCI Express configuration retry timeout register

PEX_ERR_CAP

[uint32_t; 4]

PCI Express error capture register

PEX_ERR_CAP_STAT

uint32_t

PCI Express error capture status register

PEX_ERR_CAP_STATColdResetValue

uint32_t

PCI Express error capture status register

PEX_ERR_CAP_STATForcedBits

uint32_t

PCI Express error capture status register

PEX_ERR_CAP_STATForcedFlippedBits

uint32_t

PCI Express error capture status register

PEX_ERR_CAP_STATReadMask

uint32_t

PCI Express error capture status register

PEX_ERR_CAP_STATResetMask

uint32_t

PCI Express error capture status register

PEX_ERR_CAP_STATResetValue

uint32_t

PCI Express error capture status register

PEX_ERR_CAP_STATWriteMask

uint32_t

PCI Express error capture status register

PEX_ERR_DISR

uint32_t

PCI Express error disable register

PEX_ERR_DISRColdResetValue

uint32_t

PCI Express error disable register

PEX_ERR_DISRForcedBits

uint32_t

PCI Express error disable register

PEX_ERR_DISRForcedFlippedBits

uint32_t

PCI Express error disable register

PEX_ERR_DISRReadMask

uint32_t

PCI Express error disable register

PEX_ERR_DISRResetMask

uint32_t

PCI Express error disable register

PEX_ERR_DISRResetValue

uint32_t

PCI Express error disable register

PEX_ERR_DISRWriteMask

uint32_t

PCI Express error disable register

PEX_ERR_DR

uint32_t

PCI Express error detect register

PEX_ERR_DRColdResetValue

uint32_t

PCI Express error detect register

PEX_ERR_DRForcedBits

uint32_t

PCI Express error detect register

PEX_ERR_DRForcedFlippedBits

uint32_t

PCI Express error detect register

PEX_ERR_DRReadMask

uint32_t

PCI Express error detect register

PEX_ERR_DRResetMask

uint32_t

PCI Express error detect register

PEX_ERR_DRResetValue

uint32_t

PCI Express error detect register

PEX_ERR_DRWriteMask

uint32_t

PCI Express error detect register

PEX_ERR_EN

uint32_t

PCI Express error interrupt enable register

PEX_ERR_ENColdResetValue

uint32_t

PCI Express error interrupt enable register

PEX_ERR_ENForcedBits

uint32_t

PCI Express error interrupt enable register

PEX_ERR_ENForcedFlippedBits

uint32_t

PCI Express error interrupt enable register

PEX_ERR_ENReadMask

uint32_t

PCI Express error interrupt enable register

PEX_ERR_ENResetMask

uint32_t

PCI Express error interrupt enable register

PEX_ERR_ENResetValue

uint32_t

PCI Express error interrupt enable register

PEX_ERR_ENWriteMask

uint32_t

PCI Express error interrupt enable register

PEX_IP_BLK_REV

[uint32_t; 2]

IP block revision register 1

PEX_OTB_CPL_TOR

uint32_t

PCI Express outbound completion timeout register

PEX_OTB_CPL_TORColdResetValue

uint32_t

PCI Express outbound completion timeout register

PEX_OTB_CPL_TORForcedBits

uint32_t

PCI Express outbound completion timeout register

PEX_OTB_CPL_TORForcedFlippedBits

uint32_t

PCI Express outbound completion timeout register

PEX_OTB_CPL_TORReadMask

uint32_t

PCI Express outbound completion timeout register

PEX_OTB_CPL_TORResetMask

uint32_t

PCI Express outbound completion timeout register

PEX_OTB_CPL_TORResetValue

uint32_t

PCI Express outbound completion timeout register

PEX_OTB_CPL_TORWriteMask

uint32_t

PCI Express outbound completion timeout register

PEX_PMCR

uint32_t

PCI Express power management command register

PEX_PMCRColdResetValue

uint32_t

PCI Express power management command register

PEX_PMCRForcedBits

uint32_t

PCI Express power management command register

PEX_PMCRForcedFlippedBits

uint32_t

PCI Express power management command register

PEX_PMCRReadMask

uint32_t

PCI Express power management command register

PEX_PMCRResetMask

uint32_t

PCI Express power management command register

PEX_PMCRResetValue

uint32_t

PCI Express power management command register

PEX_PMCRWriteMask

uint32_t

PCI Express power management command register

PEX_PME_MES_DISR

uint32_t

PCI Express PME and message disable register

PEX_PME_MES_DISRColdResetValue

uint32_t

PCI Express PME and message disable register

PEX_PME_MES_DISRForcedBits

uint32_t

PCI Express PME and message disable register

PEX_PME_MES_DISRForcedFlippedBits

uint32_t

PCI Express PME and message disable register

PEX_PME_MES_DISRReadMask

uint32_t

PCI Express PME and message disable register

PEX_PME_MES_DISRResetMask

uint32_t

PCI Express PME and message disable register

PEX_PME_MES_DISRResetValue

uint32_t

PCI Express PME and message disable register

PEX_PME_MES_DISRWriteMask

uint32_t

PCI Express PME and message disable register

PEX_PME_MES_DR

uint32_t

PCI Express PME and message detect register

PEX_PME_MES_DRColdResetValue

uint32_t

PCI Express PME and message detect register

PEX_PME_MES_DRForcedBits

uint32_t

PCI Express PME and message detect register

PEX_PME_MES_DRForcedFlippedBits

uint32_t

PCI Express PME and message detect register

PEX_PME_MES_DRReadMask

uint32_t

PCI Express PME and message detect register

PEX_PME_MES_DRResetMask

uint32_t

PCI Express PME and message detect register

PEX_PME_MES_DRResetValue

uint32_t

PCI Express PME and message detect register

PEX_PME_MES_DRWriteMask

uint32_t

PCI Express PME and message detect register

PEX_PME_MES_IER

uint32_t

PCI Express PME and message interrupt enable register

PEX_PME_MES_IERColdResetValue

uint32_t

PCI Express PME and message interrupt enable register

PEX_PME_MES_IERForcedBits

uint32_t

PCI Express PME and message interrupt enable register

PEX_PME_MES_IERForcedFlippedBits

uint32_t

PCI Express PME and message interrupt enable register

PEX_PME_MES_IERReadMask

uint32_t

PCI Express PME and message interrupt enable register

PEX_PME_MES_IERResetMask

uint32_t

PCI Express PME and message interrupt enable register

PEX_PME_MES_IERResetValue

uint32_t

PCI Express PME and message interrupt enable register

PEX_PME_MES_IERWriteMask

uint32_t

PCI Express PME and message interrupt enable register

ReplayLoggingFlags

uint64_t

Replay-time category logging flags

TimeSource

*void

Time source object

config.externalInterrupt

uint8_t

External interrupt (used as base by legacy PCI interrupts)

config.internalInterrupt

uint8_t

Internal interrupt

configSpace

[uint32_t; 1024]

Raw configuration space access

deviceIOAccess

temu_IfaceRef/ <unknown>

Access to the pcie’s io space from inbound windows

deviceMemAccess

temu_IfaceRef/ <unknown>

Access to the pcie’s memory space from inbound windows

extIrqCtrl

temu_IfaceRef/ <unknown>

Interrupt controller (external interface)

ioMem

temu_IfaceRef/ <unknown>

PCIe i/o space object

irqCtrl

temu_IfaceRef/ <unknown>

Interrupt controller (internal interface)

isEPMode

uint8_t

pciBridge

*void

PCIe rc bridge

pciMem

temu_IfaceRef/ <unknown>

PCIe memory space object

pcieBuses

temu_IfaceRefArray

PCI busses

processorMem

temu_IfaceRef/ <unknown>

Access to the processor’s memory space from inbound windows

Interfaces

Name Type Description

DeviceIface

DeviceIface

Device Interface

InboundAccessIface

MemAccessIface

PCIe inbound access interfaceinterface.

IrqIface

IrqCtrlIface

PCI IRQ interface

MemAccessIface

MemAccessIface

Memory access interface (registers)

OutboundMemAccessIface

MemAccessIface

PCIe outbound memory access interface.

PCIDevIface

temu::PCIDeviceIface

PCIe device interface

PCIExpressBridgeIface

temu::PCIExpressBridgeIface

PCIe bridge interface.

RegisterIface

temu::RegisterIface

Auto-generated Register Interface Impl.

ResetIface

ResetIface

Reset Interface

WindowsAccessIface

MemAccessIface

PCIe windows and configuration access interface.

Registers

Register support is currently experimental!

Register Bank Regs

Register PEX_CONFIG_ADDR
Description

PCI Express configuration address register

Reset value

0x00000000

Warm reset mask

0x8ffffffc

Diagram
Field Mask Reset Description

EN

0x80000000

0x0

Enable PCI Express configuration access

EXTREGN

0x0f000000

0x0

Extended register number

BUSN

0x00ff0000

0x0

Bus number

DEVN

0x0000f800

0x0

Device number

FUNCN

0x00000700

0x0

Function number

REGN

0x000000fc

0x0

Register number

Register PEX_CONFIG_DATA
Description

PCI Express configuration data register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

Data

0xffffffff

0x0

Configuration access data

Register PEX_OTB_CPL_TOR
Description

PCI Express outbound completion timeout register

Reset value

0x0010ffff

Warm reset mask

0x80ffffff

Diagram
Field Mask Reset Description

TD

0x80000000

0x0

Completion timeout disable

TC

0x00ffffff

0x10ffff

Completion timeout counter

Register PEX_CONF_RTY_TOR
Description

PCI Express configuration retry timeout register

Reset value

0x0400ffff

Warm reset mask

0x8fffffff

Diagram
Field Mask Reset Description

RD

0x80000000

0x0

Configuration retry disable

TC

0x0fffffff

0x400ffff

Configuration retry timeout counter

Register PEX_CONFIG
Description

PCI Express configuration register

Reset value

0x00000000

Warm reset mask

0x00000013

Diagram
Field Mask Reset Description

SAC

0x00000010

0x0

Sense ASPM control

SP

0x00000002

0x0

Slot present

SCC

0x00000001

0x0

Slot clock configuration

Register PEX_PME_MES_DR
Description

PCI Express PME and message detect register

Reset value

0x00000000

Warm reset mask

0x00000000

Diagram
Field Mask Reset Description

PTO

0x00008000

-

PME_Turn_Off message detected

ENL23

0x00002000

-

Entered L2/L3 ready state

EXL23

0x00001000

-

Exited L2/L3 ready state

HRD

0x00000400

-

Hot reset detected

LDD

0x00000200

-

Link down detected

AION

0x00000040

-

Attention indicator on message detected

AIB

0x00000020

-

Attention indicator blink message detected

AIOF

0x00000010

-

Attention indicator off message detected

PION

0x00000008

-

Power indicator on message detected

PIB

0x00000004

-

Power indicator blink message detected

PIOF

0x00000002

-

Power indicator off message detected

ABP

0x00000001

-

Attention button pressed message detected

Register PEX_PME_MES_DISR
Description

PCI Express PME and message disable register

Reset value

0x00000000

Warm reset mask

0x0000b67f

Diagram
Field Mask Reset Description

PTOD

0x00008000

0x0

PME_Turn_Off detection disable

ENL23D

0x00002000

0x0

Entered L2/L3 ready detection disable

EXL23D

0x00001000

0x0

Exited L2/L3 ready detection disable

HRDD

0x00000400

0x0

Hot reset detection disable

LDDD

0x00000200

0x0

Link down detection disable

AIOND

0x00000040

0x0

Attention indicator on detection disable

AIBD

0x00000020

0x0

Attention indicator blink detection disable

AIOFD

0x00000010

0x0

Attention indicator off detection disable

PIOND

0x00000008

0x0

Power indicator on detection disable

PIBD

0x00000004

0x0

Power indicator blink detection disable

PIOFD

0x00000002

0x0

Power indicator off detection disable

ABPD

0x00000001

0x0

Attention button pressed detection disable

Register PEX_PME_MES_IER
Description

PCI Express PME and message interrupt enable register

Reset value

0x00000000

Warm reset mask

0x0000b67f

Diagram
Field Mask Reset Description

PTOIE

0x00008000

0x0

PME_Turn_Off interrupt enable

ENL23IE

0x00002000

0x0

Entered L2/L3 ready interrupt enable

EXL23IE

0x00001000

0x0

Exited L2/L3 ready interrupt enable

HRDIE

0x00000400

0x0

Hot reset detected interrupt enable

LDDIE

0x00000200

0x0

Link down detected interrupt enable

AIONIE

0x00000040

0x0

Attention indicator on interrupt enable

AIBIE

0x00000020

0x0

Attention indicator blink interrupt enable

AIOFIE

0x00000010

0x0

Attention indicator off interrupt enable

PIONIE

0x00000008

0x0

Power indicator on interrupt enable

PIBIE

0x00000004

0x0

Power indicator blink interrupt enable

PIOFIE

0x00000002

0x0

Power indicator off interrupt enable

ABPIE

0x00000001

0x0

Attention button pressed interrupt enable

Register PEX_PMCR
Description

PCI Express power management command register

Reset value

0x00000000

Warm reset mask

0x00000007

Diagram
Field Mask Reset Description

SPMES

0x00000004

0x0

Set PME status

EXL2S

0x00000002

0x0

Exit L2 state

PTOMR

0x00000001

0x0

PME_Turn_Off message request

Register PEX_ERR_DR
Description

PCI Express error detect register

Reset value

0x00000000

Warm reset mask

0x00000000

Diagram
Field Mask Reset Description

ME

0x80000000

-

Multiple errors

PCT

0x00800000

-

PCI Express completion timeout

PCAC

0x00200000

-

PCI Express completer abort completion

PNM

0x00100000

-

PCI Express no map

CDNSC

0x00080000

-

Completion with data not successful

CRSNC

0x00040000

-

CRS non-configuration completion

ICCA

0x00020000

-

Invalid PEX_CONFIG_ADDR/PEX_CONFIG_DATA access

IACA

0x00010000

-

Invalid ATMU configuration access

CRST

0x00008000

-

CRS thresholded

MIS

0x00004000

-

Message invalid size

IOIS

0x00002000

-

I/O invalid size

CIS

0x00001000

-

Configuration invalid size

CIEP

0x00000800

-

Configuration invalid EP

IOIEP

0x00000400

-

I/O invalid EP

OAC

0x00000200

-

Outbound ATMU crossing

IOIA

0x00000100

-

I/O invalid address

Register PEX_ERR_EN
Description

PCI Express error interrupt enable register

Reset value

0x00000000

Warm reset mask

0x00bfff00

Diagram
Field Mask Reset Description

PCTIE

0x00800000

0x0

Completion timeout interrupt enable

PCACIE

0x00200000

0x0

Completer abort completion interrupt enable

PNMIE

0x00100000

0x0

No map interrupt enable

CDNSCIE

0x00080000

0x0

Completion with data not successful interrupt enable

CRSNCIE

0x00040000

0x0

CRS non-configuration interrupt enable

ICCAIE

0x00020000

0x0

Invalid PEX_CONFIG_ADDR/PEX_CONFIG_DATA interrupt enable

IACAIE

0x00010000

0x0

Invalid ATMU configuration access interrupt enable

CRSTIE

0x00008000

0x0

CRS threshold interrupt enable

MISIE

0x00004000

0x0

Message invalid size interrupt enable

IOISIE

0x00002000

0x0

I/O invalid size interrupt enable

CISIE

0x00001000

0x0

Configuration invalid size interrupt enable

CIEPIE

0x00000800

0x0

Configuration invalid EP interrupt enable

IOIEPIE

0x00000400

0x0

I/O invalid EP interrupt enable

OACIE

0x00000200

0x0

Outbound ATMU crossing interrupt enable

IOIAIE

0x00000100

0x0

I/O invalid address interrupt enable

Register PEX_ERR_DISR
Description

PCI Express error disable register

Reset value

0x00000000

Warm reset mask

0x80bfff00

Diagram
Field Mask Reset Description

MED

0x80000000

0x0

Multiple errors detection disable

PCTD

0x00800000

0x0

Completion timeout detection disable

PCACD

0x00200000

0x0

Completer abort completion detection disable

PNMD

0x00100000

0x0

No map detection disable

CDNSCD

0x00080000

0x0

Completion with data not successful detection disable

CRSNCD

0x00040000

0x0

CRS non-configuration detection disable

ICCAD

0x00020000

0x0

Invalid PEX_CONFIG_ADDR/PEX_CONFIG_DATA detection disable

IACAD

0x00010000

0x0

Invalid ATMU configuration access detection disable

CRSTD

0x00008000

0x0

CRS threshold detection disable

MISD

0x00004000

0x0

Message invalid size detection disable

IOISD

0x00002000

0x0

I/O invalid size detection disable

CISD

0x00001000

0x0

Configuration invalid size detection disable

CIEPD

0x00000800

0x0

Configuration invalid EP detection disable

IOIEPD

0x00000400

0x0

I/O invalid EP detection disable

OACD

0x00000200

0x0

Outbound ATMU crossing detection disable

IOIAD

0x00000100

0x0

I/O invalid address detection disable

Register PEX_ERR_CAP_STAT
Description

PCI Express error capture status register

Reset value

0x00000000

Warm reset mask

0x0000007e

Diagram
Field Mask Reset Description

TO

0x00000040

0x0

Transaction originated from PEX_CONFIG_ADDR/DATA

GSID

0x0000003e

0x0

Global source ID

ECV

0x00000001

-

Error capture valid

Register PEX_IP_BLK_REV
Description

IP block revision register 1

Reset value

0x02080101

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

IP_ID

0xffff0000

0x208

Block ID

IP_MJ

0x0000ff00

0x1

Block major revision

IP_MN

0x000000ff

0x1

Block minor revision

Register PEX_IP_BLK_REV
Description

IP block revision register 2

Reset value

0x00000000

Warm reset mask

0x00ff00ff

Diagram
Field Mask Reset Description

IP_ID

0xffff0000

0x0

Block ID

IP_MJ

0x0000ff00

-

Block major revision

Register PEXOTAR
Description

PCI Express outbound translation address register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

TEA

0xfff00000

0x0

Outbound translation extended address bits [43:32]

TA

0x000fffff

0x0

Outbound translation address bits [31:12]

Register PEXOTAR
Description

PCI Express outbound translation address register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

TEA

0xfff00000

0x0

Outbound translation extended address bits [43:32]

TA

0x000fffff

0x0

Outbound translation address bits [31:12]

Register PEXOTAR
Description

PCI Express outbound translation address register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

TEA

0xfff00000

0x0

Outbound translation extended address bits [43:32]

TA

0x000fffff

0x0

Outbound translation address bits [31:12]

Register PEXOTAR
Description

PCI Express outbound translation address register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

TEA

0xfff00000

0x0

Outbound translation extended address bits [43:32]

TA

0x000fffff

0x0

Outbound translation address bits [31:12]

Register PEXOTAR
Description

PCI Express outbound translation address register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

TEA

0xfff00000

0x0

Outbound translation extended address bits [43:32]

TA

0x000fffff

0x0

Outbound translation address bits [31:12]

Register PEXOTEAR
Description

PCI Express outbound translation extended address register

Reset value

0x00000000

Warm reset mask

0x000fffff

Diagram
Field Mask Reset Description

TEA

0x000fffff

0x0

Outbound translation extended address bits [63:44]

Register PEXOTEAR
Description

PCI Express outbound translation extended address register

Reset value

0x00000000

Warm reset mask

0x000fffff

Diagram
Field Mask Reset Description

TEA

0x000fffff

0x0

Outbound translation extended address bits [63:44]

Register PEXOTEAR
Description

PCI Express outbound translation extended address register

Reset value

0x00000000

Warm reset mask

0x000fffff

Diagram
Field Mask Reset Description

TEA

0x000fffff

0x0

Outbound translation extended address bits [63:44]

Register PEXOTEAR
Description

PCI Express outbound translation extended address register

Reset value

0x00000000

Warm reset mask

0x000fffff

Diagram
Field Mask Reset Description

TEA

0x000fffff

0x0

Outbound translation extended address bits [63:44]

Register PEXOTEAR
Description

PCI Express outbound translation extended address register

Reset value

0x00000000

Warm reset mask

0x000fffff

Diagram
Field Mask Reset Description

TEA

0x000fffff

0x0

Outbound translation extended address bits [63:44]

Register PEXOWBAR
Description

PCI Express outbound window base address register

Reset value

0x00000000

Warm reset mask

0x00ffffff

Diagram
Field Mask Reset Description

WBEA

0x00f00000

0x0

Outbound window base extended address bits [0:3]

WBA

0x000fffff

0x0

Outbound window base address bits [4:23]

Register PEXOWBAR
Description

PCI Express outbound window base address register

Reset value

0x00000000

Warm reset mask

0x00ffffff

Diagram
Field Mask Reset Description

WBEA

0x00f00000

0x0

Outbound window base extended address bits [0:3]

WBA

0x000fffff

0x0

Outbound window base address bits [4:23]

Register PEXOWBAR
Description

PCI Express outbound window base address register

Reset value

0x00000000

Warm reset mask

0x00ffffff

Diagram
Field Mask Reset Description

WBEA

0x00f00000

0x0

Outbound window base extended address bits [0:3]

WBA

0x000fffff

0x0

Outbound window base address bits [4:23]

Register PEXOWBAR
Description

PCI Express outbound window base address register

Reset value

0x00000000

Warm reset mask

0x00ffffff

Diagram
Field Mask Reset Description

WBEA

0x00f00000

0x0

Outbound window base extended address bits [0:3]

WBA

0x000fffff

0x0

Outbound window base address bits [4:23]

Register PEXOWBAR
Description

PCI Express outbound window base address register

Reset value

0x00000000

Warm reset mask

0x00ffffff

Diagram
Field Mask Reset Description

WBEA

0x00f00000

0x0

Outbound window base extended address bits [0:3]

WBA

0x000fffff

0x0

Outbound window base address bits [4:23]

Register PEXOWAR
Description

PCI Express outbound window attributes register

Reset value

0x80044023

Warm reset mask

0x98eff03f

Diagram
Field Mask Reset Description

EN

0x80000000

0x1

Outbound translation window enable

ROE

0x10000000

0x0

Relaxed ordering enable

NS

0x08000000

0x0

No snoop enable

TC

0x00e00000

0x0

Traffic class

RTT

0x000f0000

0x4

Read transaction type

WTT

0x0000f000

0x4

Write transaction type

OWS

0x0000003f

0x23

Outbound window size

Register PEXOWAR
Description

PCI Express outbound window attributes register

Reset value

0x00044023

Warm reset mask

0x98eff03f

Diagram
Field Mask Reset Description

EN

0x80000000

0x0

Outbound translation window enable

ROE

0x10000000

0x0

Relaxed ordering enable

NS

0x08000000

0x0

No snoop enable

TC

0x00e00000

0x0

Traffic class

RTT

0x000f0000

0x4

Read transaction type

WTT

0x0000f000

0x4

Write transaction type

OWS

0x0000003f

0x23

Outbound window size

Register PEXOWAR
Description

PCI Express outbound window attributes register

Reset value

0x00044023

Warm reset mask

0x98eff03f

Diagram
Field Mask Reset Description

EN

0x80000000

0x0

Outbound translation window enable

ROE

0x10000000

0x0

Relaxed ordering enable

NS

0x08000000

0x0

No snoop enable

TC

0x00e00000

0x0

Traffic class

RTT

0x000f0000

0x4

Read transaction type

WTT

0x0000f000

0x4

Write transaction type

OWS

0x0000003f

0x23

Outbound window size

Register PEXOWAR
Description

PCI Express outbound window attributes register

Reset value

0x00044000

Warm reset mask

0x98eff03f

Diagram
Field Mask Reset Description

EN

0x80000000

0x0

Outbound translation window enable

ROE

0x10000000

0x0

Relaxed ordering enable

NS

0x08000000

0x0

No snoop enable

TC

0x00e00000

0x0

Traffic class

RTT

0x000f0000

0x4

Read transaction type

WTT

0x0000f000

0x4

Write transaction type

OWS

0x0000003f

0x0

Outbound window size

Register PEXOWAR
Description

PCI Express outbound window attributes register

Reset value

0x00044023

Warm reset mask

0x98eff03f

Diagram
Field Mask Reset Description

EN

0x80000000

0x0

Outbound translation window enable

ROE

0x10000000

0x0

Relaxed ordering enable

NS

0x08000000

0x0

No snoop enable

TC

0x00e00000

0x0

Traffic class

RTT

0x000f0000

0x4

Read transaction type

WTT

0x0000f000

0x4

Write transaction type

OWS

0x0000003f

0x23

Outbound window size

Register PEXITAR
Description

PCI Express inbound translation address register

Reset value

0x00000000

Warm reset mask

0x00ffffff

Diagram
Field Mask Reset Description

TEA

0x00f00000

0x0

Inbound translation extended address bits [0:3]

TA

0x000fffff

0x0

Inbound translation address bits [4:23]

Register PEXITAR
Description

PCI Express inbound translation address register

Reset value

0x00000000

Warm reset mask

0x00ffffff

Diagram
Field Mask Reset Description

TEA

0x00f00000

0x0

Inbound translation extended address bits [0:3]

TA

0x000fffff

0x0

Inbound translation address bits [4:23]

Register PEXITAR
Description

PCI Express inbound translation address register

Reset value

0x00000000

Warm reset mask

0x00ffffff

Diagram
Field Mask Reset Description

TEA

0x00f00000

0x0

Inbound translation extended address bits [0:3]

TA

0x000fffff

0x0

Inbound translation address bits [4:23]

Register PEXIWBAR
Description

PCI Express inbound window base address register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

WBEA

0xfff00000

0x0

Inbound window base extended address bits [43:32]

WBA

0x000fffff

0x0

Inbound window base address bits [31:12]

Register PEXIWBAR
Description

PCI Express inbound window base address register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

WBEA

0xfff00000

0x0

Inbound window base extended address bits [43:32]

WBA

0x000fffff

0x0

Inbound window base address bits [31:12]

Register PEXIWBAR
Description

PCI Express inbound window base address register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

WBEA

0xfff00000

0x0

Inbound window base extended address bits [43:32]

WBA

0x000fffff

0x0

Inbound window base address bits [31:12]

Register PEXIWBEAR
Description

PCI Express inbound window base extended address register

Reset value

0x00000000

Warm reset mask

0x000fffff

Diagram
Field Mask Reset Description

WBEA

0x000fffff

0x0

Inbound window base extended address bits [63:44]

Register PEXIWBEAR
Description

PCI Express inbound window base extended address register

Reset value

0x00000000

Warm reset mask

0x000fffff

Diagram
Field Mask Reset Description

WBEA

0x000fffff

0x0

Inbound window base extended address bits [63:44]

Register PEXIWBEAR
Description

PCI Express inbound window base extended address register

Reset value

0x00000000

Warm reset mask

0x000fffff

Diagram
Field Mask Reset Description

WBEA

0x000fffff

0x0

Inbound window base extended address bits [63:44]

Register PEXIWAR
Description

PCI Express inbound window attributes register

Reset value

0x20f44023

Warm reset mask

0xa0fff03f

Diagram
Field Mask Reset Description

EN

0x80000000

0x0

Inbound translation window enable

PF

0x20000000

0x1

Prefetchable

TRGT

0x00f00000

0xf

Target interface

RTT

0x000f0000

0x4

Read transaction type

WTT

0x0000f000

0x4

Write transaction type

IWS

0x0000003f

0x23

Inbound window size

Register PEXIWAR
Description

PCI Express inbound window attributes register

Reset value

0x20f44023

Warm reset mask

0xa0fff03f

Diagram
Field Mask Reset Description

EN

0x80000000

0x0

Inbound translation window enable

PF

0x20000000

0x1

Prefetchable

TRGT

0x00f00000

0xf

Target interface

RTT

0x000f0000

0x4

Read transaction type

WTT

0x0000f000

0x4

Write transaction type

IWS

0x0000003f

0x23

Inbound window size

Register PEXIWAR
Description

PCI Express inbound window attributes register

Reset value

0x20f44023

Warm reset mask

0xa0fff03f

Diagram
Field Mask Reset Description

EN

0x80000000

0x0

Inbound translation window enable

PF

0x20000000

0x1

Prefetchable

TRGT

0x00f00000

0xf

Target interface

RTT

0x000f0000

0x4

Read transaction type

WTT

0x0000f000

0x4

Write transaction type

IWS

0x0000003f

0x23

Inbound window size

Register PEX_ERR_CAP
Description

PCI Express error capture register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

DATA

0xffffffff

0x0

Captured error data

Register PEX_ERR_CAP
Description

PCI Express error capture register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

DATA

0xffffffff

0x0

Captured error data

Register PEX_ERR_CAP
Description

PCI Express error capture register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

DATA

0xffffffff

0x0

Captured error data

Register PEX_ERR_CAP
Description

PCI Express error capture register

Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

DATA

0xffffffff

0x0

Captured error data

Commands

Name Description

delete

Dispose instance of PCIe

inject-inbound

Send inbound transaction of 32 bit

Command inject-inbound Arguments

Name Type Required Description

addr

int

yes

Address to unmap.

value

int

yes

Value to inject.

Limitations

  • Target interface for inbound windows can be set to local memory space only, Serial Rapid IO is not implemented.