mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-07 12:25:00 -04:00
Merge "mhi: core: Use high priority workqueue for all MHI work"
This commit is contained in:
commit
18f67937ca
4 changed files with 8 additions and 9 deletions
|
|
@ -1579,9 +1579,9 @@ int of_register_mhi_controller(struct mhi_controller *mhi_cntrl)
|
|||
INIT_WORK(&mhi_cntrl->st_worker, mhi_pm_st_worker);
|
||||
init_waitqueue_head(&mhi_cntrl->state_event);
|
||||
|
||||
mhi_cntrl->special_wq = alloc_ordered_workqueue("mhi_special_w",
|
||||
mhi_cntrl->wq = alloc_ordered_workqueue("mhi_w",
|
||||
WQ_MEM_RECLAIM | WQ_HIGHPRI);
|
||||
if (!mhi_cntrl->special_wq)
|
||||
if (!mhi_cntrl->wq)
|
||||
goto error_alloc_cmd;
|
||||
|
||||
INIT_WORK(&mhi_cntrl->special_work, mhi_special_purpose_work);
|
||||
|
|
@ -1707,7 +1707,7 @@ error_add_dev:
|
|||
|
||||
error_alloc_dev:
|
||||
kfree(mhi_cntrl->mhi_cmd);
|
||||
destroy_workqueue(mhi_cntrl->special_wq);
|
||||
destroy_workqueue(mhi_cntrl->wq);
|
||||
|
||||
error_alloc_cmd:
|
||||
vfree(mhi_cntrl->mhi_chan);
|
||||
|
|
|
|||
|
|
@ -1706,7 +1706,7 @@ irqreturn_t mhi_intvec_handlr(int irq_number, void *dev)
|
|||
MHI_VERB("Exit\n");
|
||||
|
||||
if (MHI_IN_MISSION_MODE(mhi_cntrl->ee))
|
||||
queue_work(mhi_cntrl->special_wq, &mhi_cntrl->special_work);
|
||||
queue_work(mhi_cntrl->wq, &mhi_cntrl->special_work);
|
||||
|
||||
return IRQ_WAKE_THREAD;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -788,7 +788,7 @@ static int mhi_queue_disable_transition(
|
|||
list_add_tail(&item->node, &mhi_cntrl->transition_list);
|
||||
spin_unlock_irqrestore(&mhi_cntrl->transition_lock, flags);
|
||||
|
||||
schedule_work(&mhi_cntrl->st_worker);
|
||||
queue_work(mhi_cntrl->wq, &mhi_cntrl->st_worker);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -808,7 +808,7 @@ int mhi_queue_state_transition(struct mhi_controller *mhi_cntrl,
|
|||
list_add_tail(&item->node, &mhi_cntrl->transition_list);
|
||||
spin_unlock_irqrestore(&mhi_cntrl->transition_lock, flags);
|
||||
|
||||
schedule_work(&mhi_cntrl->st_worker);
|
||||
queue_work(mhi_cntrl->wq, &mhi_cntrl->st_worker);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -824,8 +824,7 @@ static void mhi_special_events_pending(struct mhi_controller *mhi_cntrl)
|
|||
|
||||
spin_lock_bh(&mhi_event->lock);
|
||||
if (ev_ring->rp != mhi_to_virtual(ev_ring, er_ctxt->rp)) {
|
||||
queue_work(mhi_cntrl->special_wq,
|
||||
&mhi_cntrl->special_work);
|
||||
queue_work(mhi_cntrl->wq, &mhi_cntrl->special_work);
|
||||
spin_unlock_bh(&mhi_event->lock);
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -357,7 +357,7 @@ struct mhi_controller {
|
|||
/* worker for different state transitions */
|
||||
struct work_struct st_worker;
|
||||
struct work_struct special_work;
|
||||
struct workqueue_struct *special_wq;
|
||||
struct workqueue_struct *wq;
|
||||
|
||||
wait_queue_head_t state_event;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue