CSID will no longer write to crop registers for all paths. UMD will
configure those registers in init packet. Crop enable logic is retained.
CRs-Fixed: 2929029
Change-Id: If6888d9094a6af3306c603d737b10c32918ab787
Signed-off-by: Anand Ravi <ananravi@codeaurora.org>
When a bubble is detected ISP notifies CRM either for recovery or
provides a trigger to apply next req. Due to scheduling issues,
it's possible that CRM triggers an apply prior to ISP substate update
leading to apply failures. This could prove fatal in case of
FS/sHDR use-cases. This change updates the substate prior to
notifying CRM.
CRs-Fixed: 2841729
Change-Id: I5ccc2b91f347ec29a5dcf6aafe71c063572a7ff7
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Add a check for reg-val count=0 in reg_random command. Count=0 in
reg_random cdm command will throw an invalid command HW error.
CRs-Fixed: 2916477
Change-Id: Idb8654c3752963cf5a52147d350e291208b917d0
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Validate per path BW index to ensure it's not negative.
During IDLE time for a given IPE/BPS stream the BW structure is
memset to 0x0 forcing the index and vote to 0. On the next instance
when BW is to removed for the given stream from consolidated
BW value the computed index turns out to be less than zero leading
to an invalid array access. This change validates the index
prior to access.
CRs-Fixed: 2841729
Change-Id: I944f07015538323578b9728053a590686ee20d1a
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Propagate error code to user in order to let the
user know more about the failure.
CRs-Fixed: 2860306
Change-Id: Icf030aa9df32eac97371059c2d282cfb53257401
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Move constraint error bitmasks to header for vfe and sfe.
Add WM name to sfe header.
CRs-Fixed: 2841729
Change-Id: Ia5d18f1a348fabe9679acc3c50983392d8864613
Signed-off-by: Mukund Madhusudan Atre <matre@codeaurora.org>
Set the debugfs root entry pointer to null after
recursive remove at unbinding to prevent null pointer
dereference by kernel followed by kernel panic. Also,
add checks to avoid null pointer dereference.
CRs-Fixed: 2920490
Change-Id: I5a4f44f3d8f533f3a51e108472d5ccf93c261a98
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Calculate number of full and lite IFE to map hardware index to IFE
hardware number instead of extending the function for each new hardware.
CRs-Fixed: 2926668
Change-Id: I992d52232ff85b12aa2b1cbc43232742e980b34a
Signed-off-by: Anand Ravi <ananravi@codeaurora.org>
Based on link_hdl/sensor id, that can separate multi camera event
on reqmgr, apply request, bufdone, isp_active_irq.
Add log of link_hdl/sensor id in above trace event,
that systrace can show independent camera trace event.
CRs-Fixed: 2924042
Change-Id: I7088a8a489a05dae4e62dc131d1c0c45c72038e2
Signed-off-by: Haibin Liu <haibinl@codeaurora.org>
WM isp resource node state is modified before the acquire is a success.
Subsequent calls to acquire fail because of incorrect resource state.
Also, release WM on unsuccessful comp group acquire.
CRs-Fixed: 2924856
Change-Id: I7fe4ce16cabf5443e2c832d1e4fdcf8d65226d00
Signed-off-by: Anand Ravi <ananravi@codeaurora.org>
Add support to add a delay while programming the IRQ
settings. Also, correct the irq mask bring up sequence
for csiphy2.1.0.
CRs-Fixed: 2923706
Change-Id: I1ef5b078bd91e915b9e53305edc0034d62132831
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Since IFE HW manager issues dual sync config command only after
acquiring IPP path, CSID driver must clear the dual sync config when IPP
path is released.
CRs-Fixed: 2914494
Change-Id: I5200f120d2fe8305b5692121a07f4e7af801975c
Signed-off-by: Anand Ravi <ananravi@codeaurora.org>
Correct the phy id to be sent while notify the errors from
CSID driver to csi phy driver.
CRs-Fixed: 2924001
Change-Id: I363dbed5e6edeeafd93d42838154fba30cb711c9
Signed-off-by: Gaurav Jindal <gjindal@codeaurora.org>
Remove all the debug flags in cache create call. The change
also adds the destroy call during unbind for consistency.
CRs-Fixed: 2841729
Change-Id: I2e0a0e4f2ec9191a3159d77892ff292a0a3cc131
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
With the allow list tightened, use the right header for spinlock
usage. Change replaces usage of linux/spinlock.h to
linux/spinlock_types.h.
CRs-Fixed: 2841729
Change-Id: I0247501b765436099f75c9725e9f614f0873c888
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
The camnoc max needed flag is stored for each tree node and
parsed once per level. Fix parsing of camnoc max needed flag.
Improve cpas logging. Part of this change fixes issue introduced
in: commit d099238a67 ("msm: camera: cpas: Update bus node
level parsing logic").
CRs-Fixed: 2841729
Change-Id: I55ff2265ee1491535f3e39e16920129e8dffc15a
Signed-off-by: Mukund Madhusudan Atre <matre@codeaurora.org>
On Waipio the CSID buf done controller handles only
1 register. In bus_ver3 top half we need to avoid
accessing the event status array beyond 1 element.
CRs-Fixed: 2841729
Change-Id: I3588b2cb23d57e0d9a89830e33d8aed19b1f67ff
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Add CSID640 support. The following features support are added:
- QCFA binning and BAYER binning support
- Format measure support
- Multi VC DT support
- Add core_cfg support in in_port structure
CRs-Fixed: 2887030
Change-Id: Idd7d081c985f3ef21e0fee7ce4c1b8db96ddd3c3
Signed-off-by: Wyes Karny <wkarny@codeaurora.org>