msm: camera: Request ispif_ahb_clk in ISPIF driver
ISPIF device needs to have "ispif_ahb_clk" clock when, there is a
register accesses. If this clock is not turned on and a register access
happens the following L2 master port error will happen:
<1> L2 Error detected!
<1> **L2ESR = 0x00010001
<1> **L2ESYNR0 = 0x19002008
<1> **L2ESYNR1 = 0x00409508
<1> **L2EAR0 = 0x00028106
<1> **L2EAR1 = 0x00000001
<1> **CPU bitmap = 0x1
<1> L2 master port decode error
<6> coresight-tmc fc307000.tmc: TMC aborted
<0> Kernel panic - not syncing: L2 master port error detected
Before this patch this request was left to be done by the CSID and
CSIPHY drivers, as they also need this clock. This provides a
possibility of a race condition, where the userspace, might request not
in sync the drivers and they might not enable the clocks in the correct
order. In such a case the ISPIF device might be left without clocks
being enabled, while a transaction to its register is about to be done,
which will result in the above kernel panic. To prevent this issue, the
ISPIF driver requests the required clock on its own without depending on
other drivers to do so.
Change-Id: I3f9f6239c4aaa75a9672ab3a0032ecf9ea455cf1
Signed-off-by: Vladislav Hristov <vhrist@codeaurora.org>
3 files changed