Each driver can pass private data in mini dump callback register, so
when mini dump is invoked, the mini dump handler will pass the private
data to the callback associated with the driver. With the private data,
ICP driver can determine which mini dump callback corresponds to which
ICP device/hw mgr.
CRs-Fixed: 3353541
Change-Id: I85171aa7ba31f92c5620ddbd8de8a9c168398856
Signed-off-by: Sokchetra Eung <quic_eung@quicinc.com>
This change adds bubble update packet support, when the
sensor mode or feature mask of bubble req is different
with last applied, we can use bubble update packet to
recovery the sensor mode and feature, then the bubble
req can get frame from correct sensor mode and feature.
CRs-Fixed: 3317352
Change-Id: Ia80b578044e74cc5062f9f6c12c5ae8edd2049ac
Signed-off-by: Depeng Shao <quic_depengs@quicinc.com>
Signed-off-by: Karthik Anantha Ram <quic_kartanan@quicinc.com>
camera-kernel:
bcd8dba Merge "msm: camera: icp: Remove input/output fence dependency" into camera-kernel.lnx.dev
a59199e Merge "msm: camera: icp: Support multiple ICP subdevices" into camera-kernel.lnx.dev
cce6feb Merge "msm: camera: sync: Update global synx property" into camera-kernel.lnx.dev
ae06a1d Merge "msm: camera: cpas: Fix cpas query cap log" into camera-kernel.lnx.dev
d4f8bd8 Merge "msm: camera: ois: Update ois state correctly" into camera-kernel.lnx.dev
aee4d47 Merge "msm: camera: isp: Add top irq mask for csi rx of csid lite" into camera-kernel.lnx.dev
76f56a5 Merge "msm: camera: isp: Don't report bubble if req is applied after SOF" into camera-kernel.lnx.dev
bf80a9e Merge "msm: camera: cci: Make cci can be realesed when cci status is negative" into camera-kernel.lnx.dev
5554fcb Merge "msm: camera: isp: Reset the out of sync count" into camera-kernel.lnx.dev.
Change-Id: Iba843f4f61c56b799821ced879e01106661ce429
Signed-off-by: Savita Patted <quic_spatted@quicinc.com>
Add infrastructure to allow multiple ICP subdevices to co-exist
with each subdevice exposed to UMD individually. All operations
including ioctl on each subdevice are discrete from another's. Add
a new private field in node structure to point to which subdev
the node belongs to. Add a new ICP1 device type and expose the type
associated with ICP1 to userspace for identifying the second ICP.
Each subdevice's unique name is derived from "cam-icp". The name is
then appended with a cell-index if it exists. If there are multiple
nodes in DTSI to be probed, each node must contain cell-index to
differentiate them.
For each subdevice, it is expected to have a unique node in DTSI
with unique compatible string to probe the sd during boottime.
CRs-Fixed: 3336505
Change-Id: I615f9489d5f22b0ec37f98be3fec4c67b06a52d0
Signed-off-by: Sokchetra Eung <quic_eung@quicinc.com>
Set ois state to config state only after init settings is
applied successfully, to avoid sensor power down is called
twice while init settings apply fail.
CRs-Fixed: 3332288
Change-Id: Ifdd407ea3c07eafc4091e2df354bc704ba6f0f7c
Signed-off-by: chengxue <quic_chengxue@quicinc.com>
Currently all synx handles need to be global. Update
synx create params accordingly.
CRs-Fixed: 3351015
Change-Id: I58d6f927b5a7c1508a34a64c916ca3c9fbb1de49
Signed-off-by: Karthik Anantha Ram <quic_kartanan@quicinc.com>
It is possible for UMD to send synx handles directly to FW
for input or output. FW will signal these fences to CPU.
On such occasions, ICP HLOS driver can skip processing
input and output synx fences. Synx will signal CSL.
CRs-Fixed: 3351015
Change-Id: Ia2c36db3bdaf75e12e27484357350fb20f32fcbc
Signed-off-by: Karthik Anantha Ram <quic_kartanan@quicinc.com>
If use csid lite, the csi phy rx irq doesn't set correct top irq
mask value while register dependent, and if error happens on csi
phy, we cannot stop csi rx and disable irq lead to irq storm and
phone crash.
CRs-Fixed: 3339444
Change-Id: Iae2fe4c40959b913959445a6f1631b7acf48b4af
Signed-off-by: chengxue <quic_chengxue@quicinc.com>
Reset the out of sync count once VFE can get valid
SOF irq.
CRs-Fixed: 3311867
Change-Id: I1671cb03616fba89597e2fe7d2d37c310fa20102
Signed-off-by: Depeng Shao <quic_depengs@quicinc.com>
Make MSM_CCI_RELEASE command can be executed even if CCI status is
negative. When IIC meets NACK error, CCI status will be set to
negative state. But in function cam_cci_core_cfg, if CCI status is
negative, then the command will not be executed, and the return value
of function camera_io_release is never checked, so we do nothing
even if cam_cci_release is not executed, if all MSM_CCI_INIT cmd
is executed successfully but one or more MSM_CCI_RELEASE cmd is not
executed, the streamon_clients of cpas will never be reduced to 0
and cpas will never be powered off.
CRs-Fixed: 3316756
Change-Id: I7f3d8d4e604f5a41983f1419ccc8b5817b199740
Signed-off-by: mingpan <quic_mingpan@quicinc.com>
We may apply req in between SOF and EPOCH due to workqueue delay,
then we will apply default setting in same frame, it will cause
the buf done of the following frame is delayed one frame in SHDR
usecase. This change avoids to report bubble for that case.
CRs-Fixed: 3325004
Change-Id: I1a3ae198466fde6390245a55f0f695649741bd62
Signed-off-by: Depeng Shao <quic_depengs@quicinc.com>
As per current code, csid rx side phy_sel is indexed from 1 but on
csiphy side we consider indexing from 0. So, while notifying csiphy
we need to do correct scalling. This change will fix uncheck subtraction
by adding parameter in target files which will take care of any base
used for phy selection.
CRs-Fixed: 3314104
Change-Id: I4294830a099417b944406171348aae497c41611c
Signed-off-by: Yash Upadhyay <quic_yupadhya@quicinc.com>
Increase max sync handles that can be created per
camera synx session to 256.
CRs-Fixed: 3343701
Change-Id: I5c02e6693056df302d1c0fe7005f3278ae752f45
Signed-off-by: Karthik Anantha Ram <quic_kartanan@quicinc.com>
Currently, we vote the drv bw before enabling clocks, which results
in channel switch based issues when ife is the first stream on client.
Also, the same needs to be taken care during stream off. In addition
to that, the stop bw vote for drv scenario is not propagated through
the camnoc tree correctly, causing non-zero bw to be voted during
stream off. Fix bw apply order and make sure drv bw is propagated
correctly during stop. Also, add a check to ensure all mnoc bws are
zero when the final cpas client issues stop. Enahnce cpas dump to
include debugging inside the camnoc tree.
CRs-Fixed: 3065551
Change-Id: I411870140036bfb33bb4555259f173d5f0c639d8
Signed-off-by: Mukund Madhusudan Atre <quic_matre@quicinc.com>
Add support to override ddr drv high and low bw values that
are voted to interconnect.
CRs-Fixed: 3065551
Change-Id: I3f0585f1dd0fd61fcf136487596727d890eecb65
Signed-off-by: Mukund Madhusudan Atre <quic_matre@quicinc.com>
Add 16 bit data read/write. Add new FW information
cmd parser. Add new FW download v2. Force CCI burst/
sequential write to be queued into Q0.
CRs-Fixed: 3322287
External Impact: No.
Change-Id: I8a1ea42b01a3748f466a9bc6083a799b939e6d02
Signed-off-by: Yulei Yao <quic_yuleiy@quicinc.com>
Currently we are passing integer pointer instead of array, correcting
calling parameter in ife csid on cam_irq_controller_register_dependent
api call.
CRs-Fixed: 3310178
Change-Id: Ib4174d402c0cec13bc165dc716910f1e04d84a73
Signed-off-by: Yash Upadhyay <quic_yupadhya@quicinc.com>
Removes logically dead code from various locations.
CRs-Fixed: 3325322
Change-Id: I2bfebbeb50cb6179bea8f02292027dab1d7f6e9b
Signed-off-by: Joshua Florez <quic_jflorez@quicinc.com>
Camera-kernel:
319003a Merge "msm: camera: common: Remove dead code from the camera driver" into camera-kernel.lnx.dev.
Change-Id: I518c0411a0a4b8949dccb4aa3715e86ef4b044c5
Signed-off-by: hchintal <quic_hchintal@quicinc.com>
Remove dead code from the camera driver.
CRs-Fixed: 3328154
Change-Id: I7dea63fed8f6c35825db079f89f8c34f6730f155
Signed-off-by: Chandan Kumar Jha <quic_cjha@quicinc.com>
Get slave address from user mode and update in i2c info structure.
CRs-Fixed: 3244380
Change-Id: I85bbe07927cfe072f2640cd632505fd6a168133c
Signed-off-by: Ridhi Shah <quic_ridhshah@quicinc.com>
Resolve possible array out of bounds issue.
Add break in the if for better readibility.
CRs-Fixed: 3298809
Change-Id: I3fb2085df073f4ba0530d3441344cf5b99a83f31
Signed-off-by: Petar Ivanov <quic_pivanov@quicinc.com>
Removes unnecessary rc assignments since they were not
being checked and there are already logs in the called
functions in case of error.
CRs-Fixed: 3322998
Change-Id: I3a087dea790b688956de34fd4a76911261293629
Signed-off-by: Joshua Florez <quic_jflorez@quicinc.com>
Adds a check for rc in case of VFE process cmd failure
during cam_ife_mgr_start_hw function.
CRs-Fixed: 3317130
Change-Id: I686828ed5593aeaae6e00bb2435df32b27a2a9bd
Signed-off-by: Joshua Florez <quic_jflorez@quicinc.com>
camera-kernel:
269a02d Merge "msm: camera: common: Fix return conditions in the camera driver" into camera-kernel.lnx.dev
c5dc6c2 Merge "msm: camera: reqmgr: Fix for uninitialized scalar variable" into camera-kernel.lnx.dev
d653140 Merge "msm: camera: csid: Use function return value for error" into camera-kernel.lnx.dev
3b5d776 Merge "msm: camera: isp: Classify sfe bw vote info correctly" into camera-kernel.lnx.dev
1c5a08f Merge "msm: camera: reqmgr: Update frame timeout value" into camera-kernel.lnx.dev
437fee1 Merge "msm: camera: cpas: Add support to turn on optional clks" into camera-kernel.lnx.dev
7ca9482 Merge "msm: camera: cpas: Update query cap to support domain id" into camera-kernel.lnx.dev
e8bb141 Merge "msm: camera: uapi: Add new query cap and domain id structures" into camera-kernel.lnx.dev.
Change-Id: I59c44d4b2a4988215fdc692fe6f845c81d57b6f3
Signed-off-by: hchintal <quic_hchintal@quicinc.com>
This change is needed for domain id feature support.
When a PHY and its lanes for a particular CSID are
protected in a secure session, the same for other
unused CSIDs are to be protected as well. This is
to prevent other CSIDs from tapping the data streaming
onto those lanes if they share the same PHY.
For this, the clocks for other CSIDs (eg CSID-Lite)
need to be turned on. Given that the existing driver
turns on the clocks for the CSID in use, and that
this clock information is embedded within the CSID
hw blocks, these clocks are now exposed as optional
clocks to CPAS to enable the PHY driver to turn them
on during streamon for secure session.
CRs-Fixed: 3304650
Change-Id: I1415e78467208b6b4a74223521d964a199288857
Signed-off-by: Li Sha Lim <quic_lishlim@quicinc.com>
With more restricted compilation flags, void parameter is
needed in funciton prototype if no other args exist.
CRs-Fixed: 3306362
Change-Id: I7cdc7d56ff0a5bf5e626ff964dd284faae424bc1
Signed-off-by: Pavan Kumar Chilamkurthi <quic_pchilamk@quicinc.com>
Add support to create, release, signal and import a synx object
using the existing generic fence operations. Handle signaling of
underlying synx object when a sync object is signaled & vice versa.
CRs-Fixed: 3317280
Change-Id: Ia6fac6eb732ed7091ec62f04875bdb30d88c8676
Signed-off-by: Petar Nedev <quic_pnedev@quicinc.com>
Removes an assignment to the path_found variable that would
immediately be overwritten because of a continue.
CRs-Fixed: 3320785
Change-Id: I73cef3065a657e070d1173710f49cff8457066e2
Signed-off-by: Joshua Florez <quic_jflorez@quicinc.com>
This change adds synx object support for all fence ops.
CRs-Fixed: 3317280
Change-Id: Id370a9fdb3155378c61a84dde2fa849a993ec6a2
Signed-off-by: Petar Nedev <quic_pnedev@quicinc.com>