msm: sde: Move SDE rotator timeout evtlog outside of spinlock
During an timeout event in the SDE rotator driver, a spinlock with IRQ is disabled in order to capture the rotator hw status registers. If during this time performs an evtlog timeout logging, a mutex_lock within the logging sequence will cause a panic. We must and only should perform the evtlog timeout logging after the spinlock is released. CRs-Fixed: 1067811 Change-Id: I56b7e5713069ad8ac8d5ae43a492a0ab0f4e82ff Signed-off-by: Benjamin Chan <bkchan@codeaurora.org>
This commit is contained in:
parent
6c104f8d40
commit
870adafb68
1 changed files with 3 additions and 2 deletions
|
@ -356,8 +356,6 @@ static void sde_hw_rotator_dump_status(struct sde_hw_rotator *rot)
|
|||
REGDMA_CSR_REGDMA_INVALID_CMD_RAM_OFFSET),
|
||||
SDE_ROTREG_READ(rot->mdss_base,
|
||||
REGDMA_CSR_REGDMA_FSM_STATE));
|
||||
|
||||
SDEROT_EVTLOG_TOUT_HANDLER("rot", "vbif_dbg_bus", "panic");
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1096,6 +1094,9 @@ static u32 sde_hw_rotator_wait_done_regdma(
|
|||
|
||||
sts = (status & ROT_ERROR_BIT) ? -ENODEV : 0;
|
||||
|
||||
if (status & ROT_ERROR_BIT)
|
||||
SDEROT_EVTLOG_TOUT_HANDLER("rot", "vbif_dbg_bus", "panic");
|
||||
|
||||
return sts;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue