Commit Graph

3498 Commits

Author SHA1 Message Date
Camera Software Integration
6e18085482 Merge "msm: camera: cpas: Update QOS value for volcano camera" into camera-kernel.lnx.7.0 2024-03-12 21:46:52 -07:00
Alok Chauhan
73609891e9 msm: camera: isp: Add TFE and CSID header file for 665 HW
This commit adds TFE and CSID header file for titan
version 665 hardware.

CRs-Fixed: 3746224
Change-Id: Iefcf6b2791da3eb449e2287d33f74b409c06fa68
Signed-off-by: Alok Chauhan <quic_alokc@quicinc.com>
2024-03-12 21:45:54 -07:00
Camera Software Integration
8252d3010e Merge "msm: camera: cpas: Add support for Volcano Camera" into camera-kernel.lnx.7.0 2024-03-12 21:45:07 -07:00
Sourabh Soni
70c2c7d653 msm: camera: sync: Prevent double lock/unlock on fence object
For Camera DMA and Synx object, multiple locking and
unlocking of fence object of fence object.Added check
to avoid double locking and unlocking.

CRs-Fixed: 3747628
Change-Id: I3ff9d448196c223d34f5e9ea049ff93154002422
Signed-off-by: Sourabh Soni <quic_soursoni@quicinc.com>
2024-03-11 21:47:16 -07:00
Nirmal Abraham
3b0ec887c5 msm: camera: icp: Avoid resource leak during comp bind failure
During ICP component bind, if any failure occurs, the icp_dev
struct is not freed. This change addresses that scenario.

CRs-Fixed: 3750367
Change-Id: Iee00b154bd209441b72ce8498999d85e6b940793
Signed-off-by: Nirmal Abraham <quic_c_nabrah@quicinc.com>
2024-03-11 17:38:41 +05:30
Yash Upadhyay
6b19fffad2 msm: camera: isp: Fixing CSID halt sequence
PP overflow, Pdaf violation issues were observed after
flush in stop sequence on crow. This change fixes csid
halt sequence for any usecase by correctly setting halt
mode and cmd while enabling and disabling ipp/ppp paths.
Here we are setting halt cmd to resume at frame boundary
at start and halt at frame boundary at stop.

CRs-Fixed: 3628412
Change-Id: I804e8077676e461376b49446ffbf74d0fb8c092e
Signed-off-by: Yash Upadhyay <quic_yupadhya@quicinc.com>
2024-03-11 17:08:33 +05:30
Alok Chauhan
85974e9c0d msm: camera: isp: Enhance logging in isp
Enhance logging in ISP code to avoid excessive logging.

CRs-Fixed: 3746224
Change-Id: Ib16945f7cd6beb7a74c4c742b8fa4f06ea83bc97
Signed-off-by: Alok Chauhan <quic_alokc@quicinc.com>
2024-03-11 00:23:28 -07:00
Li Sha Lim
7942cd08b8 msm: camera: csiphy: Expand CSIPHY Onthego support
Currently, onthego sysfs module only supports
configuration for one PHY at a time, and the
PHY cannot be selected, the configuration
committed will be applied to whichever PHY that is
streamed on after the settings is committed.

This change adds support to program multiple
settings for each PHY, and support for specifying
a particular PHY for which the setting is to be
applied.

CRs-Fixed: 3681877
Change-Id: Ia9555491dbfe40c83837897ac20662d9491dd82d
Signed-off-by: Li Sha Lim <quic_lishlim@quicinc.com>
2024-03-10 08:42:00 -08:00
Alok Chauhan
087097dd8d msm: camera: cpas: Update QOS value for volcano camera
Updating correct QOS values for volcano Camera, based on HW
recommendation.

CRs-Fixed: 3746224
Change-Id: I503a083ab3e0d5cffcfd969f94c5806fd2811212
Signed-off-by: Alok Chauhan <quic_alokc@quicinc.com>
2024-03-07 16:44:08 +05:30
Camera Software Integration
8a6c3c4c6e Merge "msm: camera: cdm: check irq status on hang detection" into camera-kernel.lnx.7.0 2024-03-07 02:47:01 -08:00
Camera Software Integration
f5b827e259 Merge "msm: camera: tfe: Add epd support" into camera-kernel.lnx.7.0 2024-03-07 02:46:51 -08:00
Camera Software Integration
39f27da72c Merge "msm: camera: req_mgr: correct the condition check for apply req" into camera-kernel.lnx.7.0 2024-03-07 02:46:37 -08:00
Alok Chauhan
bf881804c7 msm: camera: cpas: Add support for Volcano Camera
This change adds camnoc interface changes and CPAS version
change for Volcano camera.

CRs-Fixed: 3746224
Change-Id: I81e07ff9e7b1050670f42170bc54ab7c4c3098b0
Signed-off-by: Alok Chauhan <quic_alokc@quicinc.com>
2024-03-06 06:29:02 -08:00
Alok Chauhan
168e1b1d62 msm: camera: common: Added support for multiple project configuration
multiple targets can have same kernel config which can break
existing camera bezel compilation. Added support for multiple
project compilation for camera.

CRs-Fixed: 3740838
Change-Id: I6d0a6ccdbf0bdd4b090e45a0464d96c06b7bc4af
Signed-off-by: Alok Chauhan <quic_alokc@quicinc.com>
2024-03-01 23:33:48 +05:30
Alok Chauhan
ec6515da0e msm: camera: tfe: Add epd support
This change add support for EPD mode high data
rate sensors which send EPD instead of EOT. This
change is only for CPHY EPD sensors and not applicable
to DPHY EPD sensors. For CPHY EPD sensor, EOT error masked.

CRs-Fixed: 3736696
Signed-off-by: Alok Chauhan <quic_alokc@quicinc.com>
Change-Id: I5ef0dac8e590daa1c4f3bc217f7da81a7a193dfe
2024-02-29 09:46:12 +05:30
Yash Upadhyay
f3e30c161c msm: camera: cdm: check irq status on hang detection
On checking IRQ status on cdm hang detection, if the
inline IRQ is set then the cdm has triggered IRQ, but
there could be workqueue scheduling delay causing cdm's
config timeout. To prevent the timeout due to scheduling
delay check both work record and irq status and return
true if its delay.

CRs-Fixed: 3433175
Change-Id: Iaa34f8ff9b57e7da9f80677a7da9b4f9a53dad14
Signed-off-by: Yash Upadhyay <quic_yupadhya@quicinc.com>
2024-02-27 16:55:06 +05:30
Camera Software Integration
583fbf8d3a Merge "msm: camera: common: Increase num usecase variable" into camera-kernel.lnx.7.0 2024-02-25 22:47:38 -08:00
Camera Software Integration
bcd1e03f83 Merge "cam: isp: tfe: fix buffer alignment for shdr usecase" into camera-kernel.lnx.7.0 2024-02-25 22:47:26 -08:00
Camera Software Integration
7d71631a64 Merge "msm: camera: isp: Handle Error Injection Framework HW-done data" into camera-kernel.lnx.7.0 2024-02-25 22:47:18 -08:00
Camera Software Integration
c8ad1a6ba4 Merge "msm: camera: common: dma-buf: support users to change dma_buf name" into camera-kernel.lnx.7.0 2024-02-25 22:47:09 -08:00
Nirmal Abraham
c3ae9488bf msm: camera: req_mgr: correct the condition check for apply req
For I-EXP to 2-EXP usecase in autoHDR (without SFE), the
condition which checks whether packet is applied was failing.

Req N-1 : 1-EXP, pd=1, dev_mask = 0xd,
Req N  : (2-EXP) added to CRM, dev_mask changed to 0xf for 2 IFE's,
Req N-1: after packet applied, the condition which checks
applied_map(0xd) with dev_mask(0xf) was failing.

Correct this by comparing the applied_map with the active device's
bit map.

Signed-off-by: Nirmal Abraham <quic_c_nabrah@quicinc.com>
Change-Id: I2172208ce81d2d0e71a5f0e4eb57f3f7b5745194
2024-02-21 13:39:09 +05:30
Wasim Khan
6a766662e7 Merge "msm: camera: isp: Avoid un-clocked access of registers during regdump" into camera-kernel.lnx.7.0 2024-02-20 02:42:13 -08:00
Wasim Khan
a0337e9cff Merge "msm: camera: isp: Fix the logic to disable TFE WM clients dynamically" into camera-kernel.lnx.7.0 2024-02-20 02:42:11 -08:00
Wasim Khan
61056e4ed8 Merge "msm: camera: sensor: Proper handling of race condition in util api" into camera-kernel.lnx.7.0 2024-02-20 02:42:08 -08:00
Alok Chauhan
5f072e257c cam: isp: tfe: fix buffer alignment for shdr usecase
For shdr usecase, buffer alignment is not happening to
right resource due to wrong resource id mapping.

Correct the resource id mapping for shdr buffer alignment.

CRs-Fixed: 3696470
Signed-off-by: Alok Chauhan <quic_alokc@quicinc.com>
Change-Id: I9921add8a434cce04229cea5bdcd1c720a9b680a
2024-02-19 15:59:01 +05:30
Sourabh Soni
129aee2c2c msm: camera: isp: Handle Error Injection Framework HW-done data
In Error Injection framework, for buf done event HW-done data
is explicitly intitalized to Null and caused explicit Null
pointer dereferencing.
By adding explcit buf-done data initialization which
prevents from Null dereferencing issue.

CRs-Fixed: 3731208
Change-Id: I6ff97a1af7560cdfa65812ac1cad40e397954af7
Signed-off-by: Sourabh Soni <quic_soursoni@quicinc.com>
2024-02-14 19:29:46 +05:30
Camera Software Integration
1eea09205f Merge "msm: camera: sensor: Duplicate TPG changes for Crow" into camera-kernel.lnx.7.0 2024-02-14 02:55:40 -08:00
Wasim Khan
d15a414b70 Merge "msm: camera: isp: Release mutex in case of error" into camera-kernel.lnx.7.0 2024-02-12 04:17:50 -08:00
Wasim Khan
51e0c1f577 Merge "msm: camera: jpeg: Use spin lock irqsave to avoid preemption" into camera-kernel.lnx.7.0 2024-02-12 04:17:47 -08:00
Wasim Khan
fb4c143ef7 Merge "msm: camera: icp: Unlock mutex in case of ICP packet failure" into camera-kernel.lnx.7.0 2024-02-12 04:17:44 -08:00
Wasim Khan
7c2568adff Merge "msm: camera: common: Prevent NULL access in ISP & Sensor driver" into camera-kernel.lnx.7.0 2024-02-12 04:17:42 -08:00
Wasim Khan
0e52fe8cef Merge "msm: camera: isp: Handle error for invalid camif lite resource" into camera-kernel.lnx.7.0 2024-02-12 04:17:40 -08:00
Wasim Khan
6ac65d9079 Merge "msm: camera: isp: Prevent NULL dereference for invalid HW Res" into camera-kernel.lnx.7.0 2024-02-12 04:17:37 -08:00
Shivi Mangal
0ed9862f09 msm: camera: sensor: Proper handling of race condition in util api
Power count is coming from user space which can be modified due to
access to shared memory. This change scopes the data locally so
as to avoid vulnerability of count being modified by external
means while executing due to being in shared memory.

CRs-Fixed: 3691744.

Change-Id: I57d13435453195f8aab0c9aad4414d290274ff81
Signed-off-by: Shivi Mangal <quic_smangal@quicinc.com>
2024-02-11 08:58:57 -08:00
Camera Software Integration
f888f2c3b9 Merge "msm: camera: sensor: Proper handling of NULL Dereference" into camera-kernel.lnx.7.0 2024-02-11 07:20:53 -08:00
Camera Software Integration
82fcf87afd Merge "msm: camera: sensor: Use bubble packet for request reapply" into camera-kernel.lnx.7.0 2024-02-11 07:20:45 -08:00
Camera Software Integration
377e4bf094 Merge "msm: camera: isp: Release mutex in case of error" into camera-kernel.lnx.7.0 2024-02-11 07:20:38 -08:00
Camera Software Integration
477f423ee1 Merge "msm: camera: cre: Fix null pointer dereference in CRE driver" into camera-kernel.lnx.7.0 2024-02-11 07:20:30 -08:00
Camera Software Integration
45284ffb94 Merge "msm: camera: isp: Fix buf done handling in tfe bus" into camera-kernel.lnx.7.0 2024-02-11 07:20:23 -08:00
Alok Chauhan
1f665fe89f msm: camera: common: Increase num usecase variable
Increase num usecase variable to accommodate new
clock levels introduced.

CRs-Fixed: 3696470
Signed-off-by: Alok Chauhan <quic_alokc@quicinc.com>
Change-Id: I0bfd8b2fe0d2956c238e3993280bde87fc10b922
2024-02-08 20:30:37 -08:00
Dharmender Sharma
d37bbdafbf msm: camera: common: dma-buf: support users to change dma_buf name
This change add name to dma_buf, it's difficult to debug kernel
dma_buf users as until now as we could not set it at kernel side.

dma_buf_set_name function is exported by Android kernel. So in future if
it is exported for any kernel version then based on that we need
to support.

CRs-Fixed: 3728228
Signed-off-by: Soumen Ghosh <quic_soumeng@quicinc.com>
Signed-off-by: Dharmender Sharma <quic_dharshar@quicinc.com>
Change-Id: I556992cb4fd4cbedb820dae5b976f3a77dd6022e
2024-02-08 02:01:25 -08:00
Alok Chauhan
0595a89841 msm: camera: isp: Fix the logic to disable TFE WM clients dynamically
TFE disable WM client logic is broken due to ISP common framework
changes and last consume address changes in ISP common framework.

Fixed the logic to disable WM dynamically. This change add the
fix for invalid pointer access in last consume address logic
as well.

CRs-Fixed: 3696470
Signed-off-by: Alok Chauhan <quic_alokc@quicinc.com>
Change-Id: I31d06e0dfe17ef660e7ff023b41ada1d713ff92f
2024-02-07 16:30:04 +05:30
Vikram Sharma
b828d51bef msm: camera: isp: Handle error for invalid camif lite resource
During deinitialization of camif lite resources,
potential dereference of NULL pointer can cause
stability issues.
This commit adds validity checks
before accessing the camif lite resource pointers.

CRs-Fixed: 3715678
Change-Id: Id13b09d35f6602fbf97d835fe3b574d70f68dad4
Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
2024-02-07 00:42:52 -08:00
Vikram Sharma
04be5ad880 msm: camera: isp: Prevent NULL dereference for invalid HW Res
In init and deinit of a camera Hardware resources
parameters can be invalid/uninitialized which can
be NULL.
By adding NULL checks before dereferencing
will avoid error scenario.

CRs-Fixed: 3715918
Change-Id: I6dd28d5f27fc108b01a274aa2b6ea9988e612837
Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
2024-02-07 00:42:11 -08:00
Dharmender Sharma
7a0764952b msm: camera: isp: Avoid un-clocked access of registers during regdump
Un-clocked access of registers during dumping the registers while
handling the start failure.
Reason for the issue is that handle_reg_dump trying to read the hw
registers when HW clocks are disabled.
This commits adds a check to validate if the hw is initialized before
accessing the registers.

CRs-Fixed: 3668129
Change-Id: I98039af2382df7acce767422689992388210004f
Signed-off-by: Dharmender Sharma <quic_dharshar@quicinc.com>
2024-02-06 22:53:18 -08:00
Vikram Sharma
7ef7162e36 msm: camera: icp: Unlock mutex in case of ICP packet failure
Mutex unlock is missing if the packet size is not
equal to the packet header size during ICP packet
validation.
This commit add mutex unlock, which unlocks
the mutex to handle the above scenario.

CRs-Fixed: 3715702
Change-Id: Iafa94c1e6b3ee62cd7fd14ccfeb992c3c5c1c4c4
Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
2024-02-06 03:15:03 -08:00
Sourabh Soni
7ca6a56b11 msm: camera: common: Prevent NULL access in ISP & Sensor driver
Null arguments in ISP and Sensor drivers during init
and deinit calls can result in invalid dereferences
impacting the stability.
This commit adds checks to
handle such invalid arguments.

CRs-Fixed: 3711570
Change-Id: I08727201f787af0d5bc5dbe85acea03bb4db247c
Signed-off-by: Sourabh Soni <quic_soursoni@quicinc.com>
2024-02-06 03:14:00 -08:00
Wasim Khan
13b47dbe8a Merge "cam: isp: tfe: Fix null pointer crash for out map" into camera-kernel.lnx.7.0 2024-02-05 03:24:26 -08:00
Wasim Khan
99846be0fd Merge "msm: camera: icp: Enhance support for HW capability" into camera-kernel.lnx.7.0 2024-02-05 03:24:22 -08:00
Wasim Khan
0f44ebacdf Merge "msm: camera: tpg: Handling Null Pointer Dereference" into camera-kernel.lnx.7.0 2024-02-05 03:24:19 -08:00