4.4-stable review patch. If anyone has any objections, please let me know.
------------------
From: Ley Foon Tan lftan@altera.com
commit c622032ebc538cb3869c312ae3ad235a99da84b6 upstream.
Check the link status before retraining. If the link is not up, don't bother trying to retrain it.
[bhelgaas: split code move to separate patch, changelog] Signed-off-by: Ley Foon Tan lftan@altera.com Signed-off-by: Bjorn Helgaas bhelgaas@google.com Cc: Claudius Heine claudius.heine.ext@siemens.com Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org
--- drivers/pci/host/pcie-altera.c | 4 ++++ 1 file changed, 4 insertions(+)
--- a/drivers/pci/host/pcie-altera.c +++ b/drivers/pci/host/pcie-altera.c @@ -100,6 +100,10 @@ static bool altera_pcie_link_is_up(struc static void altera_pcie_retrain(struct pci_dev *dev) { u16 linkcap, linkstat; + struct altera_pcie *pcie = dev->bus->sysdata; + + if (!altera_pcie_link_is_up(pcie)) + return;
/* * Set the retrain bit if the PCIe rootport support > 2.5GB/s, but