mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-09 21:59:12 -04:00
Merge "pci: msm: Move rpmsg lock after command completion"
This commit is contained in:
commit
b7a4fe5073
1 changed files with 11 additions and 7 deletions
|
|
@ -6756,8 +6756,8 @@ static int msm_pcie_drv_send_rpmsg(struct msm_pcie_dev_t *pcie_dev,
|
|||
|
||||
mutex_lock(&pcie_drv.rpmsg_lock);
|
||||
if (!pcie_drv.rpdev) {
|
||||
mutex_unlock(&pcie_drv.rpmsg_lock);
|
||||
return -EIO;
|
||||
ret = -EIO;
|
||||
goto out;
|
||||
}
|
||||
|
||||
reinit_completion(&drv_info->completion);
|
||||
|
|
@ -6775,10 +6775,8 @@ static int msm_pcie_drv_send_rpmsg(struct msm_pcie_dev_t *pcie_dev,
|
|||
if (ret) {
|
||||
PCIE_ERR(pcie_dev, "PCIe: RC%d: DRV: failed to send rpmsg\n",
|
||||
pcie_dev->rc_idx);
|
||||
mutex_unlock(&pcie_drv.rpmsg_lock);
|
||||
return ret;
|
||||
goto out;
|
||||
}
|
||||
mutex_unlock(&pcie_drv.rpmsg_lock);
|
||||
|
||||
ret = wait_for_completion_timeout(&drv_info->completion,
|
||||
msecs_to_jiffies(drv_info->timeout_ms));
|
||||
|
|
@ -6786,13 +6784,19 @@ static int msm_pcie_drv_send_rpmsg(struct msm_pcie_dev_t *pcie_dev,
|
|||
PCIE_ERR(pcie_dev,
|
||||
"PCIe: RC%d: DRV: completion timeout for rpmsg\n",
|
||||
pcie_dev->rc_idx);
|
||||
return -ETIMEDOUT;
|
||||
ret = -ETIMEDOUT;
|
||||
goto out;
|
||||
}
|
||||
|
||||
ret = 0;
|
||||
|
||||
PCIE_DBG(pcie_dev, "PCIe: RC%d: DRV: rpmsg successfully sent\n",
|
||||
pcie_dev->rc_idx);
|
||||
|
||||
return 0;
|
||||
out:
|
||||
mutex_unlock(&pcie_drv.rpmsg_lock);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int msm_pcie_drv_resume(struct msm_pcie_dev_t *pcie_dev)
|
||||
|
|
|
|||
Loading…
Reference in a new issue