pci: msm: Bringing EP out of reset prior link up

In msm_pcie_enable,EP is brought out of reset
after the link up.This will cause the enumeration
issues with HSP as NTN3 GPIO is connected to WLAN reset.
So moving the part of bringing the EP out of reset
prior link training and after de-emphasis setting.

The reason for moving it after de-emphasis setting is
to ensure WLAN is brought out of reset after all the switch
settings gets applied.

change-Id: I523000fd2475d8a1767423469f3bab0b7bc97ac0
Signed-off-by: Ramya SR <quic_rsr@quicinc.com>
This commit is contained in:
Ramya SR 2022-01-05 17:55:48 +05:30
commit 3da3ec335a

View file

@ -4652,9 +4652,15 @@ static int msm_pcie_enable(struct msm_pcie_dev_t *dev)
ep_up_timeout = jiffies + usecs_to_jiffies(EP_UP_TIMEOUT_US);
if (dev->i2c_ctrl.client && dev->i2c_ctrl.client_i2c_de_emphasis_wa)
if (dev->i2c_ctrl.client && dev->i2c_ctrl.client_i2c_de_emphasis_wa) {
dev->i2c_ctrl.client_i2c_de_emphasis_wa(&dev->i2c_ctrl);
msleep(20);
}
/* bring eps out of reset */
if (dev->i2c_ctrl.client && dev->i2c_ctrl.client_i2c_reset) {
dev->i2c_ctrl.client_i2c_reset(&dev->i2c_ctrl, false);
msleep(100);
}
msm_pcie_config_sid(dev);
msm_pcie_config_controller(dev);
@ -4702,10 +4708,6 @@ static int msm_pcie_enable(struct msm_pcie_dev_t *dev)
if (dev->enumerated)
msm_msi_config(dev_get_msi_domain(&dev->dev->dev));
/* bring eps out of reset */
if (dev->i2c_ctrl.client && dev->i2c_ctrl.client_i2c_reset)
dev->i2c_ctrl.client_i2c_reset(&dev->i2c_ctrl, false);
goto out;
link_fail: