msm: mdss: remove clk off scheduling when commit pending
There can be race condition possible between Early touch event thread and kickoff thread. For ex: -> Eary touch event: Turns on clock and schedule the off after 4 vsync cycle. -> Kickoff thread: Leaves the clock on -> Second touch event: Reschedule the clock off workque The second touch event call scheduling the clock off after 4 vsync cycle. On loaded system, kickoff thread might get intruppted and get chance to rerun after 4 vysnc cycle. The clocks will be turned off for such use cases before PP done ISR. Change-Id: I85923146645379be1e3ccc578fc795306cd987ad Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
This commit is contained in:
parent
526b0d9c33
commit
7c1a00bcd3
1 changed files with 4 additions and 1 deletions
|
@ -861,8 +861,11 @@ int mdss_mdp_resource_control(struct mdss_mdp_ctl *ctl, u32 sw_event)
|
|||
* 1. Early wakeup cancelled the gate work.
|
||||
* 2. Early wakeup cancelled the off work.
|
||||
* 3. Early wakeup changed the state to ON.
|
||||
*
|
||||
* Driver will not allow off work under one condition:
|
||||
* 1. Kickoff is pending.
|
||||
*/
|
||||
if (schedule_off) {
|
||||
if (schedule_off && !ctl->mfd->validate_pending) {
|
||||
/*
|
||||
* Schedule off work after cmd mode idle timeout is
|
||||
* reached. This is to prevent the case where early wake
|
||||
|
|
Loading…
Add table
Reference in a new issue