MLK-16889 PCI: imx: disable the ltssm when link is down
authorRichard Zhu <hongxing.zhu@nxp.com>
Fri, 3 Nov 2017 05:52:55 +0000 (13:52 +0800)
committerRichard Zhu <hongxing.zhu@nxp.com>
Mon, 20 Nov 2017 02:15:07 +0000 (10:15 +0800)
Disable the LTSSM when link is down.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
drivers/pci/pcie_imx8qm.c

index 230f3b3..357fa31 100644 (file)
@@ -145,6 +145,7 @@ int pcie_ctrla_init_rc(int lane)
                printf("[%s] LNK UP %x\r\n", __func__, val);
        else {
                printf("[%s] LNK DOWN %x\r\n", __func__, val);
+               clrbits_le32(HW_PCIEX2_CTRL2_ADDR, HW_PCIEX2_CTRL2_APP_LTSSM_ENABLE);
                return -ENODEV;
        }
 
@@ -243,6 +244,7 @@ int pcie_ctrlb_sata_phy_init_rc(void)
                printf("[%s] LNK UP %x\r\n", __func__, val);
        } else {
                printf("[%s] LNK DOWN %x\r\n", __func__, val);
+               clrbits_le32(HW_PCIEX1_CTRL2_ADDR, HW_PCIEX1_CTRL2_APP_LTSSM_ENABLE);
                return -ENODEV;
        }
        clrbits_le32(PORT1_LINK_CTRL, PORT_LINK_CTRL_LNK_FAST_LNK);