I am currently trying to use AMD GCN ("graphic core next") based garphic cards (various manufactureres, different models) in a LS2085ARDB, by using various PCIe4x/8x -> PCIe16x adapters. While 3 different graphic cards based on this architecture worked using these adapters in different PCs (as well as in the T4240RDB), on the LS2085ARDB the GPU is not enumerated, instead I get the following message in dmesg:
[ 3.735939] layerscape-pcie 3600000.pcie: phy link never came up
[ 3.736716] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
Tested were both graphic cards with external supply, as well as low-power versions - so the power provided by the PCIe8x slot shouldn't be an issue.
Interestingly, pre-GCN GPUs based on the r600 architecture (~2008 ~2011) enumerate and after some tweaking work very well (even in PCIe2 mode) - however they have been phased out some while ago and do also not support OpenCL (gpu compute). Nvidia GPUs also enumerate and work, however due to the age of the LTS kernel 4.1.8, the driver lacks PCIe-mode-switch as well as GPU/memory-reclocking required for our workload.
Is there an eletric incompatibility between the PHYs built into LS2085A and AMD GCN GPUs?
Just tested those cards in our T4240RDB - and they worked perfectly there too.
Thank you and best regards, Clemens
Our RCW is:
SoC: LS2085E (0x87010010)
CPU0(A57):1800 MHz CPU1(A57):1800 MHz CPU2(A57):1800 MHz
CPU3(A57):1800 MHz CPU4(A57):1800 MHz CPU5(A57):1800 MHz
CPU6(A57):1800 MHz CPU7(A57):1800 MHz
Bus: 600 MHz DDR: 1866.667 MT/s DP-DDR: 1600 MT/s
Reset Configuration Word (RCW):
00: 48303830 48480048 00000000 00000000
10: 00000000 00200000 00200000 00000000
20: 01012980 00002580 00000000 00000000
30: 00000e0b 00000000 00000000 00000000
40: 00000000 00000000 00000000 00000000
50: 00000000 00000000 00000000 00000000
60: 00000000 00000000 00027000 00000000
70: 412a0000 00000000 00000000 00000000
Model: Freescale Layerscape 2085a RDB Board
Board: LS2085E-RDB, Board Arch: V1, Board version: D, boot from vBank: 0
SERDES1 Reference : Clock1 = 156.25MHz Clock2 = 156.25MHz
SERDES2 Reference : Clock1 = 100MHz Clock2 = 100MHz