summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2019-09-13 07:57:20 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2019-09-13 07:57:20 -0700
commit6e94fb15c868d3599ea8cad7f0aa81786b79baaf (patch)
treef3317450305d7ee6a6ce8dafdb0dca5c057548ee
parent579c3a61d15a8f8666ea20ec18bad0ef37ff8621 (diff)
parent412a92fa0f21ce6d0b47ae3ea025cd7e705da9f5 (diff)
Merge "msm: qcn: Change spin_lock api to synchronize clients"
-rw-r--r--drivers/platform/msm/qcn/qcn_sdio.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/platform/msm/qcn/qcn_sdio.c b/drivers/platform/msm/qcn/qcn_sdio.c
index 21dcd3c74508..4aa5810f91f7 100644
--- a/drivers/platform/msm/qcn/qcn_sdio.c
+++ b/drivers/platform/msm/qcn/qcn_sdio.c
@@ -188,10 +188,10 @@ static struct qcn_sdio_rw_info *qcn_sdio_alloc_rw_req(void)
static void qcn_sdio_add_rw_req(struct qcn_sdio_rw_info *rw_req)
{
- spin_lock(&sdio_ctxt->lock_wait_q);
+ spin_lock_bh(&sdio_ctxt->lock_wait_q);
list_add_tail(&rw_req->list, &sdio_ctxt->rw_wait_q);
atomic_inc(&sdio_ctxt->wait_list_count);
- spin_unlock(&sdio_ctxt->lock_wait_q);
+ spin_unlock_bh(&sdio_ctxt->lock_wait_q);
}
static int qcn_enable_async_irq(bool enable)
@@ -650,15 +650,15 @@ static void qcn_sdio_rw_work(struct work_struct *work)
struct sdio_al_channel_handle *ch_handle = NULL;
while (1) {
- spin_lock(&sdio_ctxt->lock_wait_q);
+ spin_lock_bh(&sdio_ctxt->lock_wait_q);
if (list_empty(&sdio_ctxt->rw_wait_q)) {
- spin_unlock(&sdio_ctxt->lock_wait_q);
+ spin_unlock_bh(&sdio_ctxt->lock_wait_q);
break;
}
rw_req = list_first_entry(&sdio_ctxt->rw_wait_q,
struct qcn_sdio_rw_info, list);
list_del(&rw_req->list);
- spin_unlock(&sdio_ctxt->lock_wait_q);
+ spin_unlock_bh(&sdio_ctxt->lock_wait_q);
if (rw_req->dir) {
ret = qcn_sdio_recv_buff(rw_req->cid, rw_req->buf,