Our setup consists of EVM DM816x/EM389x board (revision G) in EP mode, connected via a PCIe x1 male-male cable to a linux PC (Xenon processor) in RC mode.
Currently our main target is to recognize the EVM board on the PCIe bus of the host PC, i.e. it must appear in the lspci output. Up to now we did not succeed.
Switch settings on EVM board :
- BTMODE[4..0]=01000 --> first booting = PCIE_32
- CS0BW = 1 (on)
- all other switches are off (including PCIe RST and WDOG_EN)
We always power on first the EVM board then the host PC (hotplug not supported).
The serial port (UART2) on EVM board is connected to host PC serial port, linux PC is installed with openSuSE11.4 (Linux 2.6.37).
We use independent reference clocks in EVM and host PC (SSC disabled in BIOS host PC).
Because the EVM board PCI pin B17 is not connected (PRSNT2 for x1), we applied a manual strap B17 - B31 on EVM board in order to enable detection of our x1 connector.
We verified this by measuring the B17 pin at the side of the host PC which was correctly set to GND (=PRSNT1) as a result of the loopback.
In the cable interconnections the TX and RX signals of the lane0 are swapped.
Male - male PCIe x1 connector interconnections :
PCIe x1 male connector (x4 socket EVM) - PCIe x1 male connector (x4 socket host PC)
-------------------------------------------------------------------------------------
A1 (PRSNT1) A1 (PRSNT1)
B4 (GND) B4 (GND)
A4 (GND) A4 (GND)
B7 (GND) B7 (GND)
A11 (PWRGD) A11 (PWRGD)
A12 (GND) A12 (GND)
B13 (GND) B13 (GND)
B14 (TXP0) A16 (RXP0)
B15 (TXN0) A17 (RXN0)
A15 (GND) A15 (GND)
B16 (GND) B16 (GND)
A16(RXP0) B14 (TXP0)
A17(RXN0) B15 (TXN0)
B17 (PRSNT2) (1) B17 (PRSNT2) (1)
(1) : extra manual strap applied on EVM board between B17 - B31
Has anyone an idea what is going wrong ?
Do we really need a x4 PCIe cable (i.e. connect also lane1 signals) ?
Thanks in advance.