Commit Graph

3498 Commits

Author SHA1 Message Date
Depeng Shao
83c35b72f0 msm: camera: isp: Update the resource reserve logic
Based on HW team's recommendation, we should restrict to 1:1
mapping in between IFE and SFE hw index. This change makes
sure IFE acquire resource from the hw idx what SFE has
acquired.

CRs-Fixed: 3618217
Change-Id: I493f3519887a3a214e23cf8e70d2a1550213ee84
Signed-off-by: Depeng Shao <quic_depengs@quicinc.com>
2023-10-30 16:14:28 +05:30
Vikram Sharma
cec32ac0ce msm: camera: isp: Update event record for shutter notification
This change adds shutter notification event in event record too
which can be dumped at the time of recovery.

CRs-Fixed: 3616617
Change-Id: I4eb57da6faf7ed3dc0a0a4a407fb669078db2a25
Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
2023-10-30 11:23:44 +05:30
Dharmender Sharma
d6f2cc2a00 msm: camera: cpas: Fix cpas dump state monitor array info
Even if smart Qos is enabled disabled smart_qos_info is accessed which
causes the kernel panic. This change add few check before accessing the
smart_qos_info.

CRs-Fixed: 3650729
Change-Id: Idb8cd892f47aec60290ab3d6c7853a60558840a0
Signed-off-by: Dharmender Sharma <quic_dharshar@quicinc.com>
2023-10-29 00:28:37 -07:00
Dharmender Sharma
ac33a9b0cf msm: camera: cre: calling cpas stop during release
CRE is not calling cpas stop during release causing
cpas handle to not release. it leads to next time acquire
failure.
Handling release properly with this fix.

CRs-Fixed: 3081144
Change-Id: I40cc22ac86934bc53171f19652a0fee381ee5d67
Signed-off-by: Dharmender Sharma <quic_dharshar@quicinc.com>
2023-10-18 12:27:39 -07:00
Camera Software Integration
765156f4f3 Merge "msm: camera: common: Added missing NULL Checks" into camera-kernel.lnx.7.0 2023-10-18 02:45:49 -07:00
Sourabh Soni
eeb2706049 msm: camera: common: Added missing NULL Checks
This change is returning error for the cases
when platform device misses some data for
device or sub device. Adding Null pointer
checks resolves this issue.

CRs-Fixed: 3608850
Change-Id: If8fc3fc7c93bb2b95087674165dca8c1c13d54f6
Signed-off-by: Sourabh Soni <quic_soursoni@quicinc.com>
2023-10-14 17:54:09 +05:30
Pranav Sanwal
c565be83b1 Camera: Bring over TFE specific changes
Following gerrits combined:

msm: camera: tfe: update debug data for overflow
msm: camera: isp: Handling IRQ delay from CDM in tfe
msm: camera: isp: Handling excessive logging in cdm callback
msm: camera: tfe: Fix compilation issue
msm: camera: uapi: Add new HW ports definition for TFE
msm: camera: tfe: Add LDAR dump utility in TFE.

CRs-Fixed: 3623803
Change-Id: I31e7b8d7cff654fd292ce431b790e0e287d6845e
Signed-off-by: Pranav Sanwal <quic_psanwal@quicinc.com>
2023-10-14 17:42:59 +05:30
Gaurav Jindal
050d6d7a8a msm: camera: isp: Maintain clock rate relation between CSIPHY, CSID and TFE
Adds checks to confirm CSID frequency greater than
CSIPHY frequency, TFE frequency greater than CSID
frequency. Also TFE frequency should be such that
it can accommodate PHY data rate .

CRs-Fixed: 2847155
Change-Id: I5d3dcc53a6f27129f4b82cba1254445f58f6d0cf
Signed-off-by: Shravya Samala <quic_shravyas@quicinc.com>
Signed-off-by: Shardul Bankar <quic_sharbank@quicinc.com>
Signed-off-by: Gaurav Jindal <quic_gjindal@quicinc.com>
Signed-off-by: Alok Chauhan <quic_alokc@quicinc.com>
2023-10-14 17:41:52 +05:30
Pranav Sanwal
e9530314ea msm: camera: tfe: dump csid clock and path data at overflow
On overflow dump the AB and IB votes, tfe clock,
CSID clock and respective bus path data for acquire
time and addr_status registers.

CRs-Fixed: 3118430
Change-Id: Ia38eb4350e8e38562b6d22769b38637480da0b9d
Signed-off-by: Pranav Sanwal <quic_psanwal@quicinc.com>
2023-10-14 17:38:24 +05:30
Camera Software Integration
4299de278a Merge "msm: camera: isp: validation of cmd_buf support" into camera-kernel.lnx.7.0 2023-10-09 21:59:54 -07:00
Camera Software Integration
82b35d0b31 Merge "msm: camera: csiphy: Remove the references to a unused header" into camera-kernel.lnx.7.0 2023-10-09 21:58:34 -07:00
Camera Software Integration
7c764ef6eb Merge "msm: camera: common: Fix possible OOB reads and writes operation" into camera-kernel.lnx.7.0 2023-10-06 02:58:24 -07:00
mingpan
0c04a30b66 msm: camera: common: Fix possible OOB reads and writes operation
We need to check if the packet is valid before using it.

CRs-Fixed: 3605421
Change-Id: Ide4e005ba46690c1cac02cb77a2d9aaa497b15df
Signed-off-by: mingpan <quic_mingpan@quicinc.com>
(cherry picked from commit 0156c0475a4c6c042eb84fcfbc14b3e837e0cb4c)
2023-10-06 15:26:34 +05:30
Camera Software Integration
527bd7e7bd Merge "msm: camera: isp: Fix to map correct bus port to MID" into camera-kernel.lnx.7.0 2023-10-06 02:56:32 -07:00
Camera Software Integration
6c0e1c6d17 Merge "msm: camera: isp: Fix logic to get correct bus port on page fault" into camera-kernel.lnx.7.0 2023-10-06 02:56:18 -07:00
Shravan Nevatia
6bbdc6d2ec msm: camera: sensor: Add subdev data ptr NULL checks
Add NULL checks for the private device data ptr
returned by v4l2_get_subdevdata for sensor/CCI/PHY/flash
subdevs.

CRs-Fixed: 3605325
Change-Id: I146857a944988655f75327046bebd9b87154939b
Signed-off-by: Shravan Nevatia <quic_snevatia@quicinc.com>
(cherry picked from commit 8eaa13f96deb4d940c25cb6043a06f0b7235966a)
2023-10-06 15:25:29 +05:30
Vijay Kumar Tumati
887026f2b5 msm: camera: csiphy: Remove the references to a unused header
The file is supposed to be included only from the userspace
drivers and not from the kernel space drivers. The other
files included in the camera drivers are sufficient for
referencing the necessary symbols.

CRs-Fixed: 3562596
Change-Id: I7261e4b9af2984fd78d5dc43bfbec6c090ad647b
Signed-off-by: Vijay Kumar Tumati <quic_vtumati@quicinc.com>
(cherry picked from commit b0009248708dfe13cb0fea22b43c542520db446f)
2023-10-04 14:30:40 -07:00
Camera Software Integration
794e78060d Merge "msm: camera: isp: Add fuse support for SHDR" into camera-kernel.lnx.7.0 2023-10-04 03:08:06 -07:00
Camera Software Integration
19ca7a73f9 Merge "msm: camera: memmgr: Add missing calls of put buf to avoid leak" into camera-kernel.lnx.7.0 2023-10-04 03:06:41 -07:00
Camera Software Integration
195a33bc2e Merge "msm: camera: cre: Enable CRE module" into camera-kernel.lnx.7.0 2023-10-04 00:56:58 -07:00
Camera Software Integration
9e992f8c38 Merge "msm: camera: cpas: Add support for Cliffs Camera" into camera-kernel.lnx.7.0 2023-10-04 00:56:38 -07:00
Atiya Kailany
589a14ed9a msm: camera: utils: Add support for cesta hw client voting through mmrm
Currently, CESTA hw clients vote directly in util layer using clk crm
api, this change will enable CESTA hw clients to vote using mmrm api when
appropriate. This change affects setting the clk rate as well as
registering and unregistering a hw client with mmrm interface.

CRs-Fixed: 3385745
Change-Id: I5a9ad0e515e153dbbb937cab3a951d05677c817b
Signed-off-by: Atiya Kailany <quic_akailany@quicinc.com>
(cherry picked from commit 61b72dfada00da024e0bfe7449a4c6d845b492d2)
2023-10-04 13:25:01 +05:30
Camera Software Integration
2dcc195072 Merge "msm: camera: csiphy: Remove the references to a unused header" into camera-kernel.lnx.7.0 2023-10-04 00:51:38 -07:00
Camera Software Integration
754860d132 Merge "msm: camera: isp: Logging improvement" into camera-kernel.lnx.7.0 2023-10-04 00:50:48 -07:00
Camera Software Integration
083ac0c2f4 Merge "msm: camera: sensor: Add PHY support for cliffs" into camera-kernel.lnx.7.0 2023-10-04 00:50:06 -07:00
Camera Software Integration
862a5636b3 Merge "msm: camera: cpas: Add support for dynamic FD port config" into camera-kernel.lnx.7.0 2023-10-04 00:49:58 -07:00
Karthik Dillibabu
97c4721bae msm: camera: isp: validation of cmd_buf support
This change validates cmd_buf in IFE/TFE before submitting
BL to CDM when debugfs(enable_invalid_cmd_check) is enabled.

CRs-Fixed: 3616889
Change-Id: I5418661ff092fb15d04ab7dda6f3b59742a232a8
Signed-off-by: Karthik Dillibabu <quic_kard@quicinc.com>
(cherry picked from commit 7528980860a33e0d800915c64005965862b80982)
2023-10-03 01:17:11 -07:00
Dharmender Sharma
4ae0511777 msm: camera: isp: Fix to map correct bus port to MID
Bus port to MID mapping is wrong so updating correct MID mapping to the
respective bus ports.

CRs-Fixed: 3609762
Change-Id: I1d369319d3d5688e21ffb4873643d3cb5ac1467c
Signed-off-by: Dharmender Sharma <quic_dharshar@quicinc.com>
2023-09-28 03:31:10 -07:00
Dharmender Sharma
f927893bdb msm: camera: isp: Fix logic to get correct bus port on page fault
This commit add change to get correct resource outport
for page fault if mid value is same for two or more ports.

CRs-Fixed: 3609762
Change-Id: Ic48e71d1d3956b04240c136507c868f971ec1ad6
Signed-off-by: Dharmender Sharma <quic_dharshar@quicinc.com>
2023-09-27 11:46:24 +05:30
Depeng Shao
c0c785043e msm: camera: cci: Remove some dead code
This change removes some dead checking code for
lock function.

CRs-Fixed: 3612969
Change-Id: I8f43ab6021ed6122d37d14b06f4dac1f7e48e6c8
Signed-off-by: Depeng Shao <quic_depengs@quicinc.com>
(cherry picked from commit eea20d5fb340d847ec8ec50554b4334cd964ce47)
2023-09-26 23:54:57 +05:30
Shravan Nevatia
0101ba0568 msm: camera: sensor: Always stream-off at flush in standby mode
Issue:
- In standby mode, aux sensor is streamed-off at flush only if
stream-off command has already been received.
- If flush happens before stream-off command, the sensor is never
streamed off. This causes the next config command to fail.

Fix:
In standby mode, stream off sensor at flush regardless of the
stream-off status.

CRs-Fixed: 3537642
Change-Id: I15956d51dae4a30cdcabbe9d0ed59857c028218e
Signed-off-by: Shravan Nevatia <quic_snevatia@quicinc.com>
(cherry picked from commit d5c922710cea5c19a9bcabda946842ba47d920a5)
2023-09-26 23:54:25 +05:30
Vikram Sharma
ec8012559c msm: camera: memmgr: Add missing calls of put buf to avoid leak
This change add missing calls to put cpu buf in few scenarios.

CRs-Fixed: 3578162
Change-Id: Iab6aa0324b5072390b38df296c7acee00f5102a1
Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
2023-09-26 05:49:27 -07:00
Dharmender Sharma
6637d416d1 msm: camera: isp: Add fuse support for SHDR
Add dt-bindings entry for CAM_CPAS_SHDR_FUSE feature.
Read fuse value and store it.

CRs-Fixed: 3609762
Change-Id: I9fdd9e8ba2cf4648cca3dedba567853764344241
Signed-off-by: Dharmender Sharma <dharshar@qti.qualcomm.com>
2023-09-26 01:56:27 -07:00
Vijay Kumar Tumati
0c0096b72e msm: camera: cpas: Add support for dynamic FD port config
Configure IFE FD OUT port to secure or non-secure
based on whether the user space wants to use
hardware FD or software FD for secure camera
use cases.

CRs-Fixed: 3572316
Change-Id: I8f5f1506a01ba2aaf9c533edbdc64c5c6250cb2f
Signed-off-by: Vijay Kumar Tumati <quic_vtumati@quicinc.com>
(cherry picked from commit db520c5c3fb5e585eceb1d4bc4d58a0b799b2c08)
2023-09-22 09:34:43 -07:00
Dharmender Sharma
d5e504c12c msm: camera: cre: Enable CRE module
This change is to enable CRE driver and fix compilation issues due to
undefined variables. Also added bazzal support for cre.

CRs-Fixed: 3609762
Change-Id: Ife0910d27535f97d792991ad192f896dc1927c71
Signed-off-by: Dharmender Sharma <quic_dharshar@quicinc.com>
2023-09-22 15:59:25 +05:30
Shravan Nevatia
855f371ebb msm: camera: sensor: Add PHY support for cliffs
Add PHY driver support for cliffs (PHY version 2.2.1).

CRs-Fixed: 3618770
Change-Id: I0cec1b62e827a6c0413ec9f79612507eaaa62724
Signed-off-by: Shravan Nevatia <quic_snevatia@quicinc.com>
2023-09-22 01:42:51 -07:00
Vijay Kumar Tumati
262502722c msm: camera: csiphy: Remove the references to a unused header
The file is supposed to be included only from the userspace
drivers and not from the kernel space drivers. The other
files included in the camera drivers are sufficient for
referencing the necessary symbols.

CRs-Fixed: 3562596
Change-Id: Ie8f54d07767b1c12b36f381c0f951b15953d9e7c
Signed-off-by: Vijay Kumar Tumati <quic_vtumati@quicinc.com>
(cherry picked from commit 8f51e330a824ec89b32d60ae501ac3edaba7ed2c)
2023-09-21 12:05:11 -07:00
Stark Lin
8a04130f3b msm: camera: isp: Dump imp CSID regs during timeout
This change dumps important csid registers and clock info
during sw reset timeout.

CRs-Fixed: 3583444
Change-Id: Iac8f45343058766012c19b8d61fa9e541e8a2b76
Signed-off-by: Stark Lin <quic_starlin@quicinc.com>
2023-09-22 00:00:32 +05:30
Ayush Kumar
17b595a936 msm: camera: isp: Logging improvement
This commit add change to print vcrop register during
illegal programming error.

CRs-Fixed: 3595942
Change-Id: If09d8c1240556618dbc6c40e1e22938e187618ff
Signed-off-by: Ayush Kumar <quic_ayushkr@quicinc.com>
2023-09-20 04:42:48 -07:00
Shravan Nevatia
ed308a3020 msm: camera: sensor: Fix mutex handling in TPG driver
Issue:
TPG driver doesn't release the device mutex when the stop/
configure commands fail.

Fix:
Release the mutex everytime it's acquired in TPG driver.

Change-Id: I8414c73b89e1e69b60682d860ec1d97d6a7a8dbc
CRs-Fixed: 3594995
Signed-off-by: Shravan Nevatia <quic_snevatia@quicinc.com>
(cherry picked from commit 7b9602e996781f36a79c514780d1f776f5dfda8a)
2023-09-18 09:30:52 +05:30
mingpan
87406c4947 msm: camera: reqmgr: Pause watch dog before internal recovery
Need to pause watch dog before internal recovery because the recover
may take a long time. if don't pause watch dog here, SOF freeze may
be triggered. After recovery, need to start watch dog again.

CRs-Fixed: 3588849
Change-Id: I5209cbc1b71c7f9a68dd3ee6097da1eb6facbb40
Signed-off-by: mingpan <quic_mingpan@quicinc.com>
(cherry picked from commit b02ec3ea0706ea6b578162ec58af432d61be9cda)
2023-09-18 09:30:32 +05:30
Depeng Shao
f1ba516e2f msm: camera: isp: Add input core to hw idx for sfe2
This change adds input core type to hw idx support
for sfe2, ife hw manager needs the hw idx to notify
sfe2 of the overflow event.

CRs-Fixed: 3602081
Change-Id: I94f43e80ddad1689508c1709b1c134fedbcb034b
Signed-off-by: Depeng Shao <quic_depengs@quicinc.com>
(cherry picked from commit 8dde5b8efdd0ee5f12347762c2e90f2c05bdd41f)
2023-09-18 09:30:10 +05:30
Depeng Shao
133370a30c msm: camera: cci: Don't validate queue for lock and unlock cmd
We already reserve the space for unlock cmd during loading the
data to CCI queue, so we don't need to validate the queue before
loading unlock cmd to the queue.

CRs-Fixed: 3603432
Change-Id: Ie1acee0c09446d5a60a0f80e1393800600306412
Signed-off-by: Depeng Shao <quic_depengs@quicinc.com>
(cherry picked from commit f9ca5a4b9a0b5a6dfec4d8881d0e183068596bf9)
2023-09-18 09:29:52 +05:30
Dharmender Sharma
c6b1ce8455 msm: camera: cpas: Add support for Cliffs Camera
This change adds camnoc interface changes and CPAS version change for
Cliffs camera. It also add support for ife, csid and sfe.

CRs-Fixed: 3609762
Change-Id: Icddfd38330022b8ebc7f785ba3c97cc055e70d74
Signed-off-by: Dharmender Sharma <quic_dharshar@quicinc.com>
2023-09-12 23:45:46 -07:00
Yash Upadhyay
560a401558 msm: camera: isp: Enabling last consumed address support in tfe
Enabling last consumed address support to handle delay in bufdones.

CRs-Fixed: 3273866
Change-Id: I25df0ac7a81b696188519db8df08c66a238e1644
Signed-off-by: Yash Upadhyay <quic_yupadhya@quicinc.com>
(cherry picked from commit 8bdd7e9d45f7ff51a893bca833343e0fce1efd65)
2023-09-11 22:37:20 +05:30
Yulei Yao
0b8ef446fb msm: camera: sensor: Fix delay pass issue in I2C sequential write
When I2C sequential write is applied, first register's delay parameter
is used instead of the last one in the sequential queue.

CRs-Fixed: 3566036
External Impact: No.

Change-Id: I0aa6480d7b577fdb697bc28b61aed428d5cae8fb
Signed-off-by: Yulei Yao <quic_yuleiy@quicinc.com>
(cherry picked from commit e2ebd508d879607b2dadb1d223c1ad7338989bf2)
2023-09-11 22:35:32 +05:30
Haochen Yang
4722b4c478 msm: camera: isp: Add support for handling FCG configurations
This change parses FCG configurations from UMD, handles it
in its corresponding blob handler, then writes exact FCG configs
to the hardware.

During the prepare stage, all FCG update values will be temporarily
stored in req_isp and then utilized by the config function later.
At the end of the blob handler with FCG prepared, a dummy hw update
entry is created for further usage and the size of such entry is based
on the number of reg val pairs and the size of cdm reg random header.

During applying the req in activated state, an algorithm is implemented
to pick exact FCG prediction to be used in SFE/IFE/TFE usecases.

During the config stage, based on the number of skipped frames before,
the exact FCG configurations are passed to SFE/VFE top and then
written into kmd_buf and picked by the CDM. If the number of skipped
frames reaches the maximum that FCG supports or no recorded skipped
frames before, current configuration will be used instead and FCG
entry will be skipped. If the hardware supports multi context like TFE,
wr_sel will be programmed right before the FCG config of each context.

In order to retrieve cpu address of FCG related hw update entry,
a slight change is made in packet parser to pass those addresses
when adding hw update entries.

CRs-Fixed: 3487116
Change-Id: I1db957885933edcbfabc6ce90d72902f4c518118
Signed-off-by: Haochen Yang <quic_haocyang@quicinc.com>
(cherry picked from commit 55213f81a4bd9a847692c00e657e722c1d4ed903)
2023-09-06 00:17:45 +05:30
Haochen Yang
69f7756ed0 msm: camera: uapi: Add support for FCG configuration
This change adds structs in uapi to carry update values
for SFE/IFE/MC_TFE FCG configurations.

CRs-Fixed: 3487116
Change-Id: Ia3202ccf9649375725b8ee1b8f721347d1399a88
Signed-off-by: Haochen Yang <quic_haocyang@quicinc.com>
(cherry picked from commit 989c22e0b775faaaa72479cab3bbac629203381b)
2023-09-06 00:17:38 +05:30
Depeng Shao
38a96f694c msm: camera: cci: Fix some cci stability issues
This change moves the set parameter under lock
context to make sure all the cmds are atomic.
This change also move the unlock at the end
of writing data, then we don't need to get
inflight word count and write back to execute
word count to fix underflow issue.

CRs-Fixed: 3589051
Change-Id: I1c16a204e41e6af22a23e9249c82f541e7e6e21a
Signed-off-by: Depeng Shao <quic_depengs@quicinc.com>
(cherry picked from commit dda071b3e2e76a2d698a40c8829da0627bd80da2)
2023-08-26 02:58:12 -07:00
Camera Software Integration
573c73d3df Merge "msm: camera: isp: Apply MUP at streamon correctly" into camera-kernel.lnx.7.0 2023-08-25 04:40:00 -07:00