Remove return checks from debugfs_create_bool, as the API changed in
kernel 5.15+.
CRs-Fixed: 3048249
Change-Id: I2351776615a5fb17db1c54d285be2bf8e55443ab
Signed-off-by: Karthik Jayakumar <kjayakum@codeaurora.org>
Deprecates legacy api of_fdt_get_ddrtype() as new targets only have
LPDDR5 for platforms that support linux kernel 5.15 and newer.
CRs-Fixed: 3048249
Change-Id: I8e7f3274eadc597870118956b964fb87d69549ee
Signed-off-by: Karthik Jayakumar <kjayakum@codeaurora.org>
Print long and short packet infor with wrong mask, and also shift
correct bits value for all values.
Change-Id: I3596a059b7266cb53faa51699f7712ff3baaec9f
CRs-Fixed: 3066821
Signed-off-by: Pengfei Liu <pengfeiliu@codeaurora.org>
Current implementaton of cam_ife_csid_get_format_rdi has many nested
switch cases. In new targets, there is a requirement of having
unpacked data from CSID even if it supports packing. Modifications
in current function adds more if-else conditions.
To fix this problem and make the function simplified, this commit
modifies the cam_ife_csid_get_format_rdi function to compute the
incoming and outgoing programmable values separately. This commit
also adds one util function to validate the incoming and out format
combinations.
CRs-Fixed: 2948116
Change-Id: I06b93148d96bc7ec2b7b31a561297588f2786b08
Signed-off-by: Gaurav Jindal <gjindal@codeaurora.org>
We are moving CSID error type and error handler from csid driver
to target header file.
This commit prints additional debug information in case of MUP
mismatch and line buffer conflict CSID errors.
CRs-Fixed: 2948116
Change-Id: I46e7e8cb49a94c649862c35f7da009c86df60cc6
Signed-off-by: Chandan Kumar Jha <cjha@codeaurora.org>
Fix the incorrect condition in the cdm code and also
remove cdm debug register dump from ife_hw_mgr_config
function to avoid the duplication of the dump with the
one being printed from cdm workqueue.
CRs-fixed: 3064926
Change-Id: Idd5938030d4f9737e5ab3301d08dd221b25a54ea
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Change mode of all LITE RDI WMs to line based mode to account for
SFE ZSL RAW 80 byte stride alignment. This change is to make
it generic for all RAW outputs. If the mode needs to be made
frame based, userland will override it. The change also
updates mipi pack property in CSID LITE header.
CRs-Fixed: 3032597
Change-Id: Id3bc7686adae33506d1ffced73fef16776f4e28c
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Avoid programming RUP/AUP at CSID start for internal recovery.
The request being recovered will configure this appropriately via CDM.
Also avoid resetting epoch factor for IFE PIX resource at stream off
that is triggered internally, the UMD configured epoch factor is
needed to stream on again post recovery.
CRs-Fixed: 3045706
Change-Id: I865ad0c2c08330a29eacfea63b4e15892a84bd69
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Rearrange the rt-wrapper property in order to
not request for the ioremap for the rt-wrapper region
unnecessarily and also to make the code more general
for upcoming targets.
CRs-Fixed: 3060818
Change-Id: I45da335c1e1c372229388350612f659720326066
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
In certain files error type is not propagated correctly, change
updates error type when notifying error to IFE hw mgr.
CRs-Fixed: 3045706
Change-Id: Id0dd2f43335bad0c237982b810c9e37bb8d0c8af
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
This change Updates right out resource for PDAF parsed outport.
CRs-Fixed: 2948116
Change-Id: I20b90a8b39bccb6cfe32edf81fa577ef4c762a2d
Signed-off-by: Chandan Kumar Jha <cjha@codeaurora.org>
For Spectra 780, SOF Retiming disable can be used for master slave
cases.
This needs to be disabled for below cases:
- RDIs which are part of SHDR data.
- In case of LCR , RDI0 needs to be disabled, also disable for PPP if
there is PD data on PPP.
This commit adds support to disable SOF Retiming.
Change-Id: I253490ba1dee2006d6d7c9d1e9085e6bdb45ba65
CRs-Fixed: 2948116
Signed-off-by: Gaurav Jindal <gjindal@codeaurora.org>
For spectra 780, PIX store support is added for RDI resource.
RDI PIX store is used to minimize the peak data rate in the sfe.
This change adds support of the PIX store in the RDI path.
This feature should enable for all use-cases on the RDI0
channel in CSID to lower the ife Clock frequency.
CRs-Fixed: 2948116
Change-Id: I3f82d13ad60e3b8dec7c59229ec89eecf9d84682
Signed-off-by: Chandan Kumar Jha <cjha@codeaurora.org>
For spectra 780, one of the RDI inputs can serve
as an input to LCR in PDAF block inside IFE using
mux.
It needs programming of top wrapper registers in CSID
and mux related registers in IFE.
At bus side, mipi packing needs to be used as the
output from CSID will be Plain16.
This commit adds support for the above requirements.
CRs-Fixed: 2948116
Change-Id: I425e4aa5ed58dd4214a1f11865359b3fc06d1b0d
Signed-off-by: Gaurav Jindal<gjindal@codeaurora.org>
Add new common CDM BL type to update rup, change base and
go cmd hw update entries.
CRs-Fixed: 3045706
Change-Id: Ie008e8ac4b79a3a66323a2fed9fcea657f6368b6
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Make the context memory request for hw update entries,
in_map entries and the out_map entries per request, instead
of requesting the memory for all the requests at once in a
large blob. This will prevent the memory requests getting
denied in the situations like memory fragmentation.
CRs-Fixed: 3059124
Change-Id: I829407a6053ddddfe4bc9a07d3ae5724a57eb602
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Fix Kernel code and add security checks to avoid
possible out of bound array access variables.
CRs-fixed: 3038735
Change-Id: Idaf0889026dbf138d0cb94a0f88e5b6941ff21e2
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Add support to detect error scenarios, propagate the error
appropriately, halt IFE and recover on such error scenarios.
The change is to only handle such cases for custom AEB
use-case.
CRs-Fixed: 3045706
Change-Id: Iba4744e524523d131555e4a44f6ce7acc97633b5
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Currently reapply field in config args signifies applying
only IO buffers. Update that field as an enum providing
the provision to reapply IQ or IO accordingly.
CRs-Fixed: 3045706
Change-Id: Id10ee846a6de093e5a79858689802e421628ce56
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Add common utility functions to be used across isp
context. Util functions added to notify trigger points,
notify errors, pause CRM SOF timer and trigger register dumps.
The change also modifies certain pointer validations to
accomplish this.
CRs-Fixed: 3045706
Change-Id: I3cb19e9a24ffb82ff25e7c278b31a8bf0e854eed
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Based on whether the event posted to HW mgr is from CSID/IFE/SFE,
handle them accordingly. This change avoids breaking off new
functions in existing calls for different events, instead
have an independent handler for each HW type.
CRs-Fixed: 3045706
Change-Id: I139514d9028c6d613f1bc7403014474dc336df34
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
It's possible that CRM triggers frame skip call at SOF
and EOF. For IFE ignore the call on EOF. Only use
SOF trigger to apply default settings [scratch buffers],
for fetch engine use-cases.
CRs-Fixed: 3055035
Change-Id: Ic0b59e5beb6dff70bb1b515117f0b641d8e09308
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>