]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
PCI: layerscape: Remove ls_pcie_establish_link()
authorMinghuan Lian <Minghuan.Lian@freescale.com>
Fri, 16 Oct 2015 07:19:15 +0000 (15:19 +0800)
committerBjorn Helgaas <bhelgaas@google.com>
Mon, 2 Nov 2015 21:38:38 +0000 (15:38 -0600)
ls_pcie_establish_link() does not do any real operation, except to wait for
the linkup establishment.  In fact, this is not necessary.  Moreover, each
PCIe controller not inserted device will increase the Linux startup time
about 200ms.

Remove ls_pcie_establish_link().

Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
drivers/pci/host/pci-layerscape.c

index b2328ea13dcfe1cad3ee232c8b45f7a66cda7984..6dd44a07124021862c1704b138af6fc67421c871 100644 (file)
@@ -11,7 +11,6 @@
  */
 
 #include <linux/kernel.h>
-#include <linux/delay.h>
 #include <linux/interrupt.h>
 #include <linux/module.h>
 #include <linux/of_pci.h>
@@ -62,27 +61,12 @@ static int ls_pcie_link_up(struct pcie_port *pp)
        return 1;
 }
 
-static int ls_pcie_establish_link(struct pcie_port *pp)
-{
-       unsigned int retries;
-
-       for (retries = 0; retries < 200; retries++) {
-               if (dw_pcie_link_up(pp))
-                       return 0;
-               usleep_range(100, 1000);
-       }
-
-       dev_err(pp->dev, "phy link never came up\n");
-       return -EINVAL;
-}
-
 static void ls_pcie_host_init(struct pcie_port *pp)
 {
        struct ls_pcie *pcie = to_ls_pcie(pp);
        u32 val;
 
        dw_pcie_setup_rc(pp);
-       ls_pcie_establish_link(pp);
 
        /*
         * LS1021A Workaround for internal TKT228622