Though some similar posts are seen in this community, I would like to ask about the PCIe issue mentioned in below.
My customer is working on the issue that PCIe port cannot come up on your i.MX7D SABRE board(Rev.D).
The environment is as below;
Bus support --->
[*] PCI support
[*] Message Signaled Interrupts (MSI and MSI-X)
PCI host controller drivers --->
[*] Freescale i.MX6 PCIe controller
-*- PCI Express Port Bus support
[*] Root Port Advanced Error Reporting support
[*] PCI Express ASPM control
default(all pci driver)
And the below is the log of LinuxBSP boot-up;
33800000.pcie supply pcie-bus not found, using dummy regulator
imx6q-pcie 33800000.pcie: phy link never came up
imx6q-pcie 33800000.pcie: failed to initialize host
imx6q-pcie: probe of 33800000.pcie failed with error -22
Could you show me how they can do to make PCIe work?
According to “Known issues and workarounds for i.MX 7Dual SABRE-SD” of
PCIe Hardware Cannot probe up PCIe devices on Rev. C board.
Hardware rework is required. Rework: Change C459&C458 caps to 0 ohm resistors.
The same is correct for the rev. D.
Note: If this post answers your question, please click the Correct Answer
button. Thank you!
Thanks for your support.
The customer checked the rework of C459&C458 of the i.MX7 SABRE board.
And they found there are no C459&C458 on the board, and they found R644,R645 instead of that.
And they found the revision number printed on the board is D1.
Actually, they obtained the SABRE board recently.
It seems that the schema is not corresponding to the board.
For the D1 board, was the PCIe operation tested?
My 2 cents with regards to PCIe on the i.MX7 board:
Hi Bernhard Fink,
We are trying to get a WiFi module working with PCIe interface on Embedded Artists i.MX7 Dual COM board for one of the ongoing projects. At present we are checking kernel version 4.1.15 (based on NXP's sources).
For some strange reason, PCIe legacy interrupts are not working. Have you experienced similar issues with i.MX7 platforms? If yes, how to fix it?
As an additional experiment, PCI-MSI interrupts are enabled in the same kernel and tested, but the interrupts still not working. Really appreciate any help on this.
so you pass the PCIe init (the WiFi module is detected), but the interrupts are not working?
You use the BSP from Embedded Artists?
I have seen threads with regards to this, I need to dig a little bit into it.
Thanks for your reply.
Yes, WiFi module is getting detected, however PCIe interrupts (both MSI and Legacy) are not working.
We use the BSP from Embedded Artists. We tried with kernel 4.1.15.
What could be the possible reasons for lack of interrupts? Any specific kernel config or source change required?
In your post from February, you mention that the imx7d sabre board can be reworked so that the internal reference clock is used rather than the external pcie clock generator (U42, PI6CFGL201BZDIEX or 9FGV0241).
1. What rework is needed to use the internal reference clock?
2. Are there any changes required to the kernel or dts?
Thanks a lot for your detailed info!
I will share with the customer.
You may try using the D1 release, but strictly speaking, from Table 11 (PCIE recommendations)
of "Hardware Development Guide for i.MX7Dual " :
"i.MX differential clock is not compliance with PCIe standard. NXP recommends including an external
clock source that meets the PCIe jitter specification untils the i.MX 7DS PCIe jitter compliance can be