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>
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>
Add blob info dump on finish clock/bw update error to provide
insight into what userspace has sent in packet. Also, print the
history of bw votes to check values coming from HW manager.
CRs-Fixed: 3039737
Change-Id: Ifc4df6bb7d4a3cf03715300e9edd1d3987df4a4c
Signed-off-by: Mukund Madhusudan Atre <matre@codeaurora.org>
Component bind is responsible for platform bus. QUP i2c bus slaves
can come at probe anytime. This operation is corrupting the slave
list for CRM. This change makes sure that CRM is available after
subdev list is initiate first and then only allows the subdev to be
add in the list.
CRs-Fixed: 3034933
Change-Id: Ia08702a8b38f2f2f590021b997c729131e919d2d
Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org>
Increase CSIPHY hw block support 8 for v780 and future
platforms.
CRs-Fixed: 3042539
Change-Id: Ib8c3c2bdde583ff5dc5ddb0a7b818dc8723b270f
Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org>
Update 4Gsps data specific AFE tuning paramenters for CPHY
sensors. Also remove the CPHY specific only common parameter
from common configuration.
CRs-Fixed: 3042875
Change-Id: Icf8c0d49fdbb7da247dadb5c95cff6c984ce6850
Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org>
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Increase hw block support for CCI to 3 for v780 and
onwards.
CRs-Fixed: 3042539
Change-Id: I4a6b594a22373047e243bfefa22d304eab969e71
Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org>
To reduce traffic for shutter notification, sof and boot
sof timestamps are sent in a unified v4l2 event.
Thereby, reducing the event notification traffic by 50%.
CRs-Fixed: 3040374
Change-Id: Ib4580e0a4df7c3d1cb892fdf3254272d3134d4cb
Signed-off-by: Pranav Sanwal <psanwal@codeaurora.org>
If we config stream in order like IMAGE/IMAGE_SHORT/
PDAF, while PDAF stream reserve, it will override
sfe_inline_shdr flag to false on csid_hw, and we
can not configure the master/slave register correctly,
so we move the common sfe_inline_shdr flag to path cfg.
CRs-Fixed: 3047943
Change-Id: Ie4a863e9aa24a142c5c4b3c90553e4a2bd92d7f3
Signed-off-by: chengxue <chengxue@codeaurora.org>
Correct the CDM iommu handler by changing the
false pid and mid values written in the cdm
header file. Also, adding a support to read the
pid and mid from the dtsi file, since there is
already support for the PID values available in the
dtsi.
CRs-fixed: 2982542
Change-Id: I319a32fdcba44a6a96b79e4e67b0a2cc0e01bc4c
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
In case of sHDR dynamic switch, for a frame on which we are
configuring scratch buffer, use MUP from the last applied
valid request as opposed to global reference of MUP held
by the CSID driver. The global reference could have been
updated by a future request, it would be incorrect to use
that when that request has not even been applied.
CRs-Fixed: 3038703
Change-Id: I9369dba80fa258925ab4ae573b33931352318334
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Only do self correction after initial sync.
CRs-Fixed: 3047181
Change-Id: I29d5a633984322d2383d48ba0956fc4e2e57f87f
Signed-off-by: Depeng Shao <depengs@codeaurora.org>