diff options
| author | Amandeep Singh <amansing@codeaurora.org> | 2019-08-27 13:12:12 +0530 |
|---|---|---|
| committer | Amandeep Singh <amansing@codeaurora.org> | 2019-09-03 11:49:22 +0530 |
| commit | 652a8550db208a1f92f310a1ce9f04dda67f84c0 (patch) | |
| tree | 0d69a70486260aa6d4a7f0937559c6f0bbb55fcf | |
| parent | 9ea2de0a4e7b4cd918a38c8e5f7198c5ce77702f (diff) | |
msm: qcn: Synchronize card state change API
Update card state change API to synchronize multiple invocation
of the same API from different drivers.
Change-Id: I03c18a9540bdb64fa462262faa9cabe158e9e199
Signed-off-by: Amandeep Singh <amansing@codeaurora.org>
| -rw-r--r-- | drivers/platform/msm/qcn/qcn_sdio.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/platform/msm/qcn/qcn_sdio.c b/drivers/platform/msm/qcn/qcn_sdio.c index f926b660876c..e42109434557 100644 --- a/drivers/platform/msm/qcn/qcn_sdio.c +++ b/drivers/platform/msm/qcn/qcn_sdio.c @@ -1221,11 +1221,14 @@ int qcn_sdio_card_state(bool enable) mmc_try_claim_host(current_host, 2000); if (enable) { - ret = mmc_add_host(current_host); - if (ret) - pr_err("%s ret = %d\n", __func__, ret); + if (!atomic_read(&xport_status)) { + ret = mmc_add_host(current_host); + if (ret) + pr_err("%s ret = %d\n", __func__, ret); + } } else { - mmc_remove_host(current_host); + if (atomic_read(&xport_status)) + mmc_remove_host(current_host); } mmc_release_host(current_host); |
