Add traces before starting jpeg encode and once done irq is
generated from hw.
CRs-Fixed: 2789495
Change-Id: I02da722ed9ba0b7f4450536e35d298b8757c0655
Signed-off-by: Pavan Kumar Chilamkurthi <pchilamk@codeaurora.org>
cpas dump may be called from tasklets where sleep is
not allowed. Remove calling clk get rate APIs which
will internally have mutexes which can sleep.
CRs-Fixed: 2797701
Change-Id: Ia46238c26e4f39978f58643716a43fbdb60e8ae6
Signed-off-by: Pavan Kumar Chilamkurthi <pchilamk@codeaurora.org>
Use OT limit as 16 for jpeg niu path. This help in
controlling jpeg bw flow and to avoid any backpressure
on IFE paths.
CRs-Fixed: 2789495
Change-Id: I458fa076f59915a7c11be9e7c3d78b412c5c7c5a
Signed-off-by: Pavan Kumar Chilamkurthi <pchilamk@codeaurora.org>
This change adds support for Waipio bus hardware. It also
changes the bus private structure to be pointer based so
that most of the information is filled from hardware
specific headers.
CRs-Fixed: 2794540
Change-Id: Ie9d30442246a896f372512b62bd54be32c4921ad
Signed-off-by: Venkat Chinta <vchinta@codeaurora.org>
Signed-off-by: Mukund Madhusudan Atre <matre@codeaurora.org>
Add UAPI definitions for output resources of new VFE hardware.
Add changes to get the max output resource value based on
hardware version, at the time of probe.
CRs-Fixed: 2794540
Change-Id: I5f11be0546012c5f806153c2fd6b0aeb993f5d93
Signed-off-by: Mukund Madhusudan Atre <matre@codeaurora.org>
there should be a race condition on rd_done
read/write between cam_cci_irq and
cam_cci_read_bytes, add mutex to avoid.
CRs-Fixed: 2786609
Change-Id: Ic55976133bfdc7958b4b3c8b0efdf896f82e7ccf
Signed-off-by: chengxue <chengxue@codeaurora.org>
Whenever there are NRT request then bump-up ipe clock
to max. Clock will get reduced as part of context timer expires.
CRs-Fixed: 2793751
Change-Id: I28a0b32bd52b58e293439042008711ea454a64f3
Signed-off-by: Alok Chauhan <alokc@codeaurora.org>
Clients like cpas scale some clocks like slow_ahb, fast_ahb
through vote level based on other hw's src clk freq while
the actual src clock (camnoc) is calculated and set directly
through set_src_clk API. This will overwrite freq of camnoc_axi
with the same level as AHB when ahb clocks are set. Do not
set src clk rate while setting rate for other clocks using level.
CRs-Fixed: 2793673
Change-Id: I5538a5cebf4e47c407a2bf9778136500b1162b4a
Signed-off-by: Pavan Kumar Chilamkurthi <pchilamk@codeaurora.org>
This change handles a race while destroying session. Protecting the
session destroy with session lock.
CRs-Fixed: 2799907
Change-Id: Ia1f90a56f6bfed00439b8012e41bfae9e8f739a3
Signed-off-by: Vikram Sharma <vikramsa@codeaurora.org>
Two changes packed as one: refactor queue dump code and reformat
dump output. The first should be self-explanatory.
For the second, displaying one double word per line places an
unnecessary burden on the reader. We can balance the vertical
and horizontal space utilized for the dump by printing
four double words at a time.
Example:
word[0000]: 0x00000008 0x00010001 0x00000008 0x00010002
word[0004]: 0x00000014 0x00010003 0x00000001 0x00000008
word[0008]: 0x00000001 0x00000020 0x00010003 0x00000001
word[0012]: 0x00000009 0x00007083 0x0001620f 0x00007083
word[0016]: 0x0001620f 0x00000018 0x00010003 0x00000001
word[0020]: 0x00000005 0x00000001 0x00010000 0x00000010
word[0024]: 0x00010005 0x84f07c60 0xffffffd8 0x0000001c
word[0028]: 0x01010008 0x00000002 0x84f07c60 0xffffffd8
...
CRs-Fixed: 2805272
Change-Id: Ibc0ef955b5120ca2265cd1262fd91c124843dac0
Signed-off-by: Fernando Pacheco <fpacheco@codeaurora.org>
In order to reduce the traffic on the v4l2 queue, avoid
posting qtimer shutter for bubbled frames.
CRs-Fixed: 2799794
Change-Id: Id752605e7aff89246edfeec9337612bb7c9b4790
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Flash operation is currently being done at EPOCH timeframe. In order
to support flash operation at EPOCH extra frame needs to skip to avoid
partial lit on previous request. Moving flash operation to EOF saves
one frame and also give more stability to perform the operation with
higher stablility with removing partial lit. This change gives flash
hardware extra time to perform the operation for turn on/off the flash
hardware.
CRs-Fixed: 2795719
Change-Id: I08b82527006d8a9c81c5a5be0768705051cbd3f1
Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org>
Signed-off-by: Depeng Shao <depengs@codeaurora.org>
shared-pinctrl-gpios and shared-gpios needs to rename with gpios-shared
and gpios-shared-pinctrl to avoid the predefined format of base kernel
dtsi parsing string. Due to this there is a probe sequence delay happening
and as it is hitting the boottime KPI badly.
CRs-Fixed: 2804449
Change-Id: I26a0149ba1abb89b52750fb069e064642ca446f5
Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org>
If io config send failure happens, currently dumping the
io configuration for debug purpose. If more io configuration
data is there, it will cause excessive logs. So removed
io configuration dump in icp driver. On acquire failure,
acquire node can dump the same.
CRs-Fixed: 2800304
Change-Id: I4c6a7973eb789de8c3384311bce033070e07692f
Signed-off-by: Ravikishore Pampana <rpampana@codeaurora.org>
In case of concurrent tpg use case, configure top tpg mux sel
properly.
CRs-Fixed: 2804168
Change-Id: I9955c9f03cebac854a339ff5161a99ecaf27cbdf
Signed-off-by: Shravya Samala <shravyas@codeaurora.org>
Fix the smmu create_handle function to not generate
null handles.
CRs-Fixed: 2801574
Change-Id: Ia6de2b80915a8fd937d3745eb4c1f25ba16d21aa
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Sensors with EPD feature do not subscribe to the ERROR_EOT IRQ.
However, the CSID IRQ mask do not prevent from setting the IRQ
status, it only prevents the IRQ from getting fired. Add check
in csid irq to prevent detecting the EOT for Sensors with EPD.
CRs-Fixed: 2798458
Change-Id: I8e029834918326b70154a989fbdff747de7851ed
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Remove the sof log in CSID irq handler and handle it in the
Bottom half. Sof irq enabled during the sof freeze scenario
and sof log getting printed in the irq handler causing
the interrupt handling taking more time.
CRs-Fixed: 2796120
Change-Id: I29341efcf0134f69b9dc8284785044ee08be13b6
Signed-off-by: Ravikishore Pampana <rpampana@codeaurora.org>
For MFHDR plus EIS case, both long and short exposure
input ports will be connected. Thus overall connected
ports for EIS will be 8, resulting in V4L2 queue
depth to 240.
CRs-Fixed: 2794286
Change-Id: I12a1ae4129ccb7e3b7211a22891016ecd769b949
Signed-off-by: Shravya Samala <shravyas@codeaurora.org>
Currently power down is not happening in case of cci_init failure.
This can lead to corruption for the next power up, as power down
did not happen for the previous session. This change does power down
in case of cci failure and as a part of that it can power up resources
correctly in next session.
CRs-Fixed: 2797857
Change-Id: I9089222cb45834ae895903a4a3e21dd799beb3ed
Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org>
Enable only master sof, eof, epoch interrupts in dual tfe case.
Due to scheduling issues one tfe core interrupts will be delayed
that cause mis match of dual core interrupts events and eventually
cause the frame drops.
CRs-Fixed: 2796046
Change-Id: Ic16de3242e902bebaf79f83b9a332f0b7006908e
Signed-off-by: Ravikishore Pampana <rpampana@codeaurora.org>
This change takes care of a race which we see when we halt master
csid immediately and slave csid halt to follow. In some scenarios
after master csid halt, slave gives violation errors.
With this change we are first changing the halt mode of slave to
internal so that dependency on master is removed and
then issue halt commands to both master and slave.
CRs-Fixed: 2785781
Change-Id: Ib84a8c416e05a4ac54b6afad5c06017931d67a05
Signed-off-by: Shravya Samala <shravyas@codeaurora.org>
get sof timestamp called from tasklet which intern
should not take mutex as it may sleep. This change
removes the mutext lock from irq context.
CRs-Fixed: 2794250
Change-Id: If73acde1a4b931e4bfc3650638f7f977e18cb3ea
Signed-off-by: Vikram Sharma <vikramsa@codeaurora.org>
In case of TPG enabled, vbi value should be not be
consider in calculating epoch configuration because
vbi value passed is in cycles not in terms of lines
when TPG is selected.
CRs-Fixed: 2797039
Change-Id: Ia8870a8c2516fc2e0b3347ccb6b69db3774e33c1
Signed-off-by: Shravya Samala <shravyas@codeaurora.org>
In current code, rdi only context is upated after acquiring the
hw. In cases, where the first in_port comes as RDI only and second
in_port comes as Pix and RDI, IFE lite along with Full IFE will
be acquired. Context in question will not be marked as rdi_only.
This causes issues as the interrupts for Lite will be enabled only
if the context is rdi_only. Also, the rdi_only state machine will
not be activated.
To handle such scenarios, before acquiring the hw, we now detect
whether the context is rdi_only. Based on this, hw manager can
pass the information to CSID driver if LITE can be used or not.
Based on this, the reserve call can take decision inside CSID
driver. This information can also be used in advanced targets
where LITE has more capabilities and CSID driver needs more
information to make decisions while reserving hw.
This commit fixes some existing issues of releasing the
resources while handling the early exit from acquire call. It also
adds logging in case there is a failure in acquire because of non
availability of required resources.
CRs-Fixed: 2794147
Change-Id: I0591a83c23504eb67f3b87f17e172a9c67e7c82b
Signed-off-by: Gaurav Jindal <gjindal@codeaurora.org>
msm: camera: cdm: Fix dangling pointer issue
msm: camera: cdm: change work record to atomic variable
msm: camera: utils: Adding device type to track device handles
msm: camera: tfe: Reduce stack footprint during bw vote
msm: camera: req_mgr: Thread switch delay detection mechanisms
msm: camera: cdm: Avoid submitting BL if FIFO is full
msm: camera: tfe: check cdm hang in the tfe config timeout
msm: camera: req_mgr: Delay detection mechanism
msm: camera: cdm: Debug info in case of cdm page fault
msm: camera: isp: Max context reduction for TFE in isp driver
msm: camera: ope: Maintain current clock value during acquire
msm: camera: req_mgr: Limit CAM_ERR log in case of no empty task
msm: camera: cdm: Decrement write-count only after Bl commit
msm: camera: isp: Added CSID recovery mechanism.
CRs-Fixed: 2792394
Change-Id: I1c7a903ae15b572acf3f6318cda7394cb6549c8d
Signed-off-by: Tejas Prajapati <tpraja@codeaurora.org>