Hi,
we are testing a board on which is mounted a Texas Instruments DSP TMS320C6678.
In particular, the PCI express chain is the following :
PC -> PCI express cable -> test JIG (with a PLX PCI express to PCI bridge, PEX8112) -> Board (with a PLX PCI to PCI express bridge (PEX8112), a PLX PCI express switch (PEX8603) and two endpoints, a FPGA KINTEX7 and the DSP)
The FPGA and DSP link is 1x. In the FPGA we used the XILINX IP for PCI express Endpoint, whereas for DSP we started from the example project in the ti\pdk_C6678_1_1_2_6\packages\ti\drv\exampleProjects\PCIE_exampleProject path (this project uses the attached file).
The working procedure is that the FPGA and the DSP are running before the PC is powered on; the DSP is connected to XDS560 emulator for CCS interface.
When the PC is power on, the FPGA is properly enumerated, while the DSP isn’t.
We checked this situation, in particular the LTSSM_EN in COMMAND_STATUS register and the LTSSM_STATE in DEBUG0 register:
EVENT LTSSM_EN LTSSM_STATE
PC powered off 1 0x0 (DETECT_QUIET)
DSP running
PC turned on 1 0x11 (L0)
After about 1 second 1 0xD (RECOVERY_LOCK)
Next 0 0x0 (DETECT_QUIET)
I look forward to hearing from you
Best regards