pcie not work with 3.10.53

Discuss Ubuntu related items.

pcie not work with 3.10.53

Postby harrycyli » Tue Dec 20, 2016 12:24 pm

The pcie is not working with 3.10.53, Anyone have an idea how to patch up kernel 3.10.53 for pcie to work?
Thanks in advance.

Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 3.10.53_hli_036 armv7l)

* Documentation: https://help.ubuntu.com/
ubuntu@wandboard:~$ lspci -vvv
ubuntu@wandboard:~$ lspci -vvv
ubuntu@wandboard:~$ dmesg | grep pci
imx6q-pcie 1ffc000.pcie: phy link never came up
imx6q-pcie 1ffc000.pcie: failed to initialize host
ehci-pci: EHCI PCI platform driver
Posts: 2
Joined: Tue Dec 20, 2016 11:19 am

Re: pcie not work with 3.10.53

Postby Richard » Mon Dec 26, 2016 3:07 am

Hello, harrycyli:

I compare the git log of pci-imx6.c between linux 3.10.53 and 4.1.15.
They are quite different, and i guess it hard to just use git cherry-pick to apply those new patches on 3.10.53 from 4.1.15.

I think the key point of this problem is in "imx6_pcie_link_up" in pci-imx6.c.
There is a while loop to wait the status of PCIE phy in linux 4.1.15.

I google this issue, it seem there is a workaround to increase delay to 1000 us to get rid of this issue.
Code: Select all
diff --git a/drivers/pci/host/pci-imx6.c b/drivers/pci/host/pci-imx6.c
index 1c781f9..d7f1a40 100644
--- a/drivers/pci/host/pci-imx6.c
+++ b/drivers/pci/host/pci-imx6.c
@@ -442,7 +442,7 @@ static int imx6_pcie_wait_for_link(struct pcie_port *pp)
        int count = 200;

        while (!dw_pcie_link_up(pp)) {
-               udelay(100);
+               udelay(1000);
                if (--count)
Site Admin
Posts: 131
Joined: Tue Dec 17, 2013 6:57 am

Re: pcie not work with 3.10.53

Postby harrycyli » Thu Dec 29, 2016 11:52 am


I just download ubuntu 16.04 with kernel 4.1.15, pcie still not working:
(33.27 KiB) Downloaded 11 times

Here is the .config file:
(122.83 KiB) Downloaded 12 times
Posts: 2
Joined: Tue Dec 20, 2016 11:19 am

Return to Software - Ubuntu

Who is online

Users browsing this forum: Bing [Bot] and 2 guests