For spectra 780, one of the RDI inputs can serve
as an input to LCR in PDAF block inside IFE using
mux.
It needs programming of top wrapper registers in CSID
and mux related registers in IFE.
At bus side, mipi packing needs to be used as the
output from CSID will be Plain16.
This commit adds support for the above requirements.
CRs-Fixed: 2948116
Change-Id: I425e4aa5ed58dd4214a1f11865359b3fc06d1b0d
Signed-off-by: Gaurav Jindal<gjindal@codeaurora.org>
Fix Kernel code and add security checks to avoid
possible out of bound array access variables.
CRs-fixed: 3038735
Change-Id: Idaf0889026dbf138d0cb94a0f88e5b6941ff21e2
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Add support to detect error scenarios, propagate the error
appropriately, halt IFE and recover on such error scenarios.
The change is to only handle such cases for custom AEB
use-case.
CRs-Fixed: 3045706
Change-Id: Iba4744e524523d131555e4a44f6ce7acc97633b5
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
This change adds a debug fs entry to run cre on specified
clock.
CRs-Fixed: 3056442
Change-Id: I85bcdfa90ceae6dac5e23b87e1338cd3f3092fa6
Signed-off-by: Vikram Sharma <vikramsa@codeaurora.org>
While preparing hw for request, there is a possiblity of receiving
invalid sync object. In this case, we need to return error. By this
time, the request is already in pending list. While returning error,
request is moved back to free list. But deleting from the pending list
was missed.
This commit deleted the request from the pending list if the sync object
received is invalid.
CRs-Fixed: 2660625
Change-Id: Id619452889476b0c2811c8560361205b0d89bcb9
Signed-off-by: Gaurav Jindal <gjindal@codeaurora.org>
Update 1.2Gsps datarate specific sequence to improve the
csiphy response and add margin for the boards with larger
insertion loss. New setting adds robustness to the csiphy
operation.
CRs-Fixed: 3042875
Change-Id: I6e93d35a6a026613eb6879f07759acef05e31794
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Enable PN9 infinite loop for test. Also move the PN9 status
check from polling to one time read at streamoff.
CRs-Fixed: 3054225
Change-Id: Ia4d8ff17e3c78f37adb68ad9a4afb076fe2bda45
Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org>
Currently reapply field in config args signifies applying
only IO buffers. Update that field as an enum providing
the provision to reapply IQ or IO accordingly.
CRs-Fixed: 3045706
Change-Id: Id10ee846a6de093e5a79858689802e421628ce56
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Add common utility functions to be used across isp
context. Util functions added to notify trigger points,
notify errors, pause CRM SOF timer and trigger register dumps.
The change also modifies certain pointer validations to
accomplish this.
CRs-Fixed: 3045706
Change-Id: I3cb19e9a24ffb82ff25e7c278b31a8bf0e854eed
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Based on whether the event posted to HW mgr is from CSID/IFE/SFE,
handle them accordingly. This change avoids breaking off new
functions in existing calls for different events, instead
have an independent handler for each HW type.
CRs-Fixed: 3045706
Change-Id: I139514d9028c6d613f1bc7403014474dc336df34
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
It's possible that CRM triggers frame skip call at SOF
and EOF. For IFE ignore the call on EOF. Only use
SOF trigger to apply default settings [scratch buffers],
for fetch engine use-cases.
CRs-Fixed: 3055035
Change-Id: Ic0b59e5beb6dff70bb1b515117f0b641d8e09308
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Presil IRQ handling requires running in a workqueue, with
wait for acknowledgement in io operations. This busy wait
should be done while holding a mutex lock as opposed to
spinlock in usual irq context. Add wrapper to switch from
spinlock to mutex for presil mode in irq controller and
cdm. Add the hw lock wrapper in hw interface header.
CRs-Fixed: 2932495
Change-Id: I7600eb1e6ae8746a39e76f6cb3a2652b255f2ddd
Signed-off-by: Suraj Dongre <sdongre@codeaurora.org>
Signed-off-by: Mukund Madhusudan Atre <matre@codeaurora.org>
Currently, the structure used to aggregate incoming votes
from ife hw manager is declared as static. This is an issue
in case of multi-context camera. Add the aggregated incoming
vote entry in VFE/SFE top so that it is accessed per HW core only.
CRs-Fixed: 3008062
Change-Id: Ib174925cba3aeb86b8704fc68d6f444f476f01e6
Signed-off-by: Mukund Madhusudan Atre <matre@codeaurora.org>
CAMIF interrupts in CSID are enabled based on use case requirements.
In additionto this, inside hw manager propagation to isp context is
again dependent on the same checks. Since the enabling is based
on use-case, the checks in the handler functions are redundant.
With upgrades in hardware, the checks are increasing while handling
in hw manager.
This commit removes the checks in handler function in hw manager.
CRs-Fixed: 3052221
Change-Id: I44f59b782dba0f7e7eb20c2ace56f3094527932b
Signed-off-by: Gaurav Jindal <gjindal@codeaurora.org>
Add a check in the request manager code
to prevent the possible out of bound
array access.
CRs-Fixed: 3051099
Change-Id: I4b4ec5778d83aa8993225cae0cd599a02f526082
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Update the cdm submit bl function to use allocated
genirq memory for genirq command instead of appending
the command to the last BL entry to prevent possibly
using the memory not mapped. Also, add some more logs
to make the debugging easier.
CRs-fixed: 3029732
Change-Id: I2fc679bef4c0f72031798a03b26f840b6b4ef746
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Add correct way to check if buffer can be sent to hw in below cases.
1. buffer handle mapped twice, resulting into two entries in buf_q.
One entry without smmu mapping and one with smmu mapping.
fixed by checking if another entry with smmu map exists for i_no.
2. blob cmd buffer, packet buffer are shared only between umd and kmd.
send_buffer_to_presil expected to be called and return success.
CRs-Fixed: 2932495
Change-Id: I2dd884b7dd16c5c45d3dfc25380d039b92199319
Signed-off-by: Suraj Dongre <sdongre@codeaurora.org>
Diwali has different version of CPAS version which
requires camnoc interface changes and CPAS version
change. This change adds the same.
CRs-Fixed: 3043114
Change-Id: I698b251c43d34225053ab3a0e9c581201d6be638
Signed-off-by: Ayush Kumar <ayushkr@codeaurora.org>