When user space detects an error or does not receive
response for a request, Lets do a reset(LDAR) is triggered.
Before LDAR, user space sends flush command to the
kernel space.
To debug the cause for this situation and to dump
the information, user space sends a dump command to the
kernel space before sending flush.
As a part of this command, it passes the culprit request id
and the buffer into which the information can be dumped.
Kernel space traverses across the drivers and find the culprit hw
and dumps the relevant information in the buffer.
This data is written to a file for offline processing.
This commit implements the framework for traversal
across the RT and NRT devices.
CRs-Fixed: 2602180
Change-Id: I7e24006c20c23bfab163a2ad13b4ac6e2913bb9e
Signed-off-by: Gaurav Jindal <gjindal@codeaurora.org>
Add support for IFE2 hardware in ife hw manager, bus files.
CRs-Fixed: 2571273
Change-Id: I6193b70707b15282b8d819e8dda5eb2e5fc4c345
Signed-off-by: Gaurav Jindal <gjindal@codeaurora.org>
This change adds a check to validate the cid being acquired,
when custom HW is in the pipeline.
CRs-Fixed: 2524308
Change-Id: I32913e74bc946a4333f77f5e10757c4bd51eab67
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
This change removes the VFE reset type override that
was introduced to a hardware limitation that has since
been rectified.
CRs-Fixed: 2590331
Change-Id: I2232ab69a9c66e9e14dd849755d8b4eba63fe136
Signed-off-by: Venkat Chinta <vchinta@codeaurora.org>
Add register information. Initial QoS settings info to program
camera static settings for chipsets having camera v170_200.
Also change the logic to get the camera and cpas versions.
Added the map table corresponding to camera and cpas versions.
For any new CPAS version support, just need to add the entries to
the map. This removes the complexity of if-else cases while
fetching the cpas hw information.
CRs-Fixed: 2571273
Change-Id: I7d54b8bc038aa90ecb39f5048e7809ac10c4476f
Signed-off-by: Gaurav Jindal <gjindal@codeeaurora.org>
Signed-off-by: Chandan Kumar Jha <cjha@codeaurora.org>
Signed-off-by: Mukund Madhusudan Atre <matre@codeaurora.org>
This change reduces the duration of wait for config done during
stop and flush. We perform wait for completion once for reg
dump during flush so there is no need for a long wait during
stop.
CRs-Fixed: 2606911
Change-Id: Ib1c2d7655d8a213495618a140acea2391b262082
Signed-off-by: Venkat Chinta <vchinta@codeaurora.org>
CDM driver read the user_data reg to inform CDM's clients
about the request status being served. If before clearing
the IRQ, the value of userdata register gets updated, then
CDM will not receive another INLINE_IRQ for the updated
userdata.
This change will make sure that another interrupt is fired
by clearing the IRQ first and reading the userdata later.
CRs-Fixed: 2581559
Change-Id: I74edf1b8439ae2f88f30b6c2fdbf9ac9f3742503
Signed-off-by: Abhilash Kumar <krabhi@codeaurora.org>
Signed-off-by: Venkat Chinta <vchinta@codeaurora.org>
This change adds logic to stop IFE hardware in case of
hardware errors.
CRs-Fixed: 2590331
Change-Id: I86773cc44ce890cea47f19f0482761e686b0cd00
Signed-off-by: Venkat Chinta <vchinta@codeaurora.org>
This change reduces the maximum attempts to apply a particular
request from three to two. After two failed attempts to apply
to ISP device, IRQs for ISP device will be overlapped from
two requests. Thereafter apply request at every alternate
frame will fail without a chance of recovery. Therefore we
must notify userspace to trigger recover on the link.
CRs-Fixed: 2606911
Change-Id: I526bb837a496fe1e67786b854c5afb062dddb918
Signed-off-by: Venkat Chinta <vchinta@codeaurora.org>
Clock gating must be disabled at top level initialize
hardware routine as VFE is reset after resource level
initialize hardware routine.
CRs-Fixed: 2590331
Change-Id: I5c51c402a3a6076f056368493b774daa199228aa
Signed-off-by: Venkat Chinta <vchinta@codeaurora.org>
This change increases the watchdog timeout value from one second
to five.
CRs-Fixed: 2606911
Change-Id: I353f78369c31a513dfd94dd1988bc42c2f75b167
Signed-off-by: Venkat Chinta <vchinta@codeaurora.org>
If any subdev is reporting Nack, cci hardware gets into resetting.
During resetting if sensor tries to apply Init setting, it fails.
This change adds retry for INIT setting to reapply after sometime.
CRs-Fixed: 2598605
Change-Id: Iff13014d74abe6aebaec6cd428811de9d865f090
Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org>
Expire timer after destroying workqueues so that we
do not refer to watchdog timer while the link is
getting unlinked from session handle.
CRs-Fixed: 2585098
Change-Id: Ife2450ae66bd52ec704ac7d593b2daaeb20ba54d
Signed-off-by: Vikram Sharma <vikramsa@codeaurora.org>
Enable rdi interrupts from the required sources only,
other unused interrupts from rdi sources should be masked.
Also in the case where multiple rdi has been acquired in
same context interrupts from only one of them should be
enabled.
CRs-Fixed: 2590476
Change-Id: Icd074d1566db0b758d25c7b127402b424e48efd9
Signed-off-by: Tejas Prajapati <tpraja@codeaurora.org>
The EPOCH at which bubble is detected no setting is applied
to any device. This change will trigger applying the bubbled
setting to the device with highest pipeline delay.
CRs-Fixed: 2564669
Change-Id: I180b4a1d2d29267f330546b8860a099baf1688e9
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Add support for immediate stop and reset during flush
for custom HW.
CRs-Fixed: 2585745
Change-Id: I542ac02f8d99c194efa498bc07dffae7879a6c8a
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Use unsigned long to capture the return value of
wait_for_completion APIs as part of CSID path reset.
CRs-Fixed: 2600604
Change-Id: Ic21ddf283180a177b2c2d9e9a33fec4ec68bdd98
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
This change disables overflow recovery/detection for
custom CSID. Currently for QCOM CSID we enable overflow
detection and freeze on overflow. But for custom HW the
CSID needs to be free running, custom HW will take care
of handling any backpressure from IFE pipeline/DDR.
There is no need to backpressure to CSID in case of custom
HW.
CRs-Fixed: 2524308
Change-Id: I5de62eea0e87674d7ac24bb5ad2f11ff2a5a6b7c
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Currently as part of the page fault handler we only dump the
io_bufs. This change dumps all the patched addresses for
this request as well.
CRs-Fixed: 2579908
Change-Id: If5deec0ad3a8aec82824ef55366084c31a037515
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>