PEX0 and PEX2 issue in USB Lane Mapping cfg#5

Hello

Basic info:
Custom Carrier board
L4T R28.2.1
Cfg#5
PEX0 lanes (x2) are connected to a onboard pcie switch.
PEX2 lane (x1) is connected to mini card connector.

Both the lanes PEX0 and PEX2 disappear when i connect a mPCIe card on the PEX2 lane but when nothing is connected on PEX2, PEX0 is working.

What could be the issue?

vish_nm,

Please share the dmesg with us. Also, the tx2 adaptation guide and this link may help.
https://elinux.org/Jetson/TX2_USB

Hello WayneWWW

I have attached the dmesg txt file.

I have noticed the Plugin Manager has overwritten the device tree. So i checked the lanes using devmem2.
The results are okay for cfg#5
dmesg.txt (65.5 KB)

vish_nm,

“The results are okay for cfg#5” -> Have you resolved the problem?

According to log, it looks the problem is still.

WayneWWW

Let me clarify. I meant the output of devmem2 are correct. The lanes are owned by the respective controller as per cfg#5.

The problem still persists.

Could you make out what the reason is from the log?

vish_nm,

According to your log, plugin-manager in dts still overwrites your dtb. So the config is still 4x1,1x1.

Please comment out that 3 fragments mentioned in below page.

https://elinux.org/Jetson/TX2_USB

WayneWWW

Yes i just did that,The plugin manager is not over writting the DT anymore and PEX0 is back but PEX2 and PEX1 are not working.PEX1 had no issues previously.

I am suspecting USB Lane Mapping. How can i verify?

I have attached the DT file for reference.
DT.txt (4.59 KB)

vish_nm,

If you configuration in dts is correct, the dmesg should show you have pcie 2,1,1.

Did the dmesg you shared already comment out plugin-manager fragment?

WayneWWW

No the dmesg i shared earlier didn’t have the plugin-manager fragment commented. I did that now and updated in the last comment.

I can see pcie 2.1.1 configuration but PEX1 and PEX2 are non functional.

The dmesg attached now has the plugin-manager fragment commented.
dmesg.txt (71.9 KB)