Add new BIT fields for IFE feature flag to indicate custom AEB
mode/shdr mode. Also add support to obtain epoch factor from
userland.
CRs-Fixed: 2986303
Change-Id: I1593b3ac3d1ace660bf58f2185f35e7f9986681c
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Add support to obtain hint from userland to enable binning in
either direction. The change updates the existing binning field
in UAPI to provide provision for both vertical & horizontal
binning options.
CRs-Fixed: 2841729
Change-Id: I37958d648ed4387d9e2bff8bcff8ffd39801baa3
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
This change help to resolve below issues :-
1. Update frame duration calculation
Add frame duration calculation with the use of fps. In some cases
where horizonal blanking is more, frame duration calculation based
on sof epoch calculation is not accurate.
2. Corner case in bubble handling
Add support to handle master link bubble even if ISP linked with
slave link receive few buf done irq for bubble request before master
sends slave link to bubble state.
CRs-Fixed: 2783209
Change-Id: Ibf35f31f5263be7b6a6be6cd095447a2910a6878
Signed-off-by: Ayush Kumar <ayushkr@codeaurora.org>
Add blob to allow userland to configure BW limter for IFE/SFE
WMs. Deprecate usage of BW limiter field in UBWC blob.
CRs-Fixed: 2841729
Change-Id: Id39414e2a6f9e9f9f4ae33aa245f3ab6f3ad0f45
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
This change introduces a blob to obtain number of frames to be
dropped in CSID when sensor is streamed on. This parameter will
be applicable for all paths in the pipeline.
CRs-Fixed: 2841729
Change-Id: Idcf1f6c8223f885c82883aa1d5fdf6981ffcc813
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
In case of SFE FS mode, SFE PP needs to be bypassed by
programming sfe_offline_en in CSID wrapper. Get this
hint from UMD to differentiate between sHDR & FS use-cases.
CRs-Fixed: 2841729
Change-Id: If118440be2066c50871785f2077c69cff126d0f7
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Update hbi, vbi & throttle pattern in TPG with the values sent
from user-space in TPG blob.
CRs-Fixed: 2841729
Change-Id: Ie4d95252c0b00ce8226f39fe899eae7c0bf3c88a
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
This change moves epd support from blob to acquire.
CRs-Fixed: 2830502
Change-Id: I9794e5fe0fcad1c38c095a8d5b346f840d125da3
Signed-off-by: Chandan Kumar Jha <cjha@codeaurora.org>
Adds support for camera kernel driver source being moved to Vendor SI.
CRs-Fixed: 2835738
Change-Id: Ibb876edb1284bc77c366c3ef9e1ee9a39981c960
Signed-off-by: Karthik Jayakumar <kjayakum@codeaurora.org>
If there is a use-case where lite can be used to support PIX resources,
as a part of acquire, a hint will be sent to indicate that lite can
be acquired. This hint is used to acquire the lite csid based on the
use-case.
CRs-Fixed: 2830502
Change-Id: Ib0a005ed64cd7ffec579195948f0fcb8b24ea837
Signed-off-by: Gaurav Jindal <gjindal@codeaurora.org>
During acquire, dynamic_sensor_switch_en flag is passed. This is used
to set the enable the bit in CSID rx.
As a part of config_dev, MUP and num_exposures are set.
CRs-Fixed: 2830502
Change-Id: Ie8a42f32b6fc61decff4fe1bddcb8ef41754af3d
Signed-off-by: Gaurav Jindal <gjindal@codeaurora.org>
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
Due to major hw changes in latest CSID680 IP block, refactoring of
CSID kernel driver is required.
To support the hw speciific driver, version based files
are added. One common file to support the common functionality
and common utilities has also been added.
CRs-Fixed: 2830502
Change-Id: If1e2a0835ce285f968f154d2da5595e882ae6ccd
Signed-off-by: Gaurav Jindal <gjindal@codeaurora.org>
Some customers have sensor mode with more blanking width.
Due to this, time is not sufficient for applying
setting thus resulted in frame drops.
To avoid this situation, epoch is calculated on complete
frame and configured at half the frame.
CRs-Fixed: 2757095
Change-Id: I92927c23762f717d6ddca67a7e641422e8fb6d8f
Signed-off-by: Shravya Samala <shravyas@codeaurora.org>
Enabling format measure helps to find mismatch between
the expected sensor width and height with actual sensor width
and height. In case of metadata, width is more than 16 bit, hence
skip format measure check for it.
In case of mismatch CSID will give CSID_PATH_ERROR_PIX_COUNT
and CSID_PATH_ERROR_LINE_COUNT.
CRs-Fixed: 2634468
Change-Id: Ic57a18ee5217982d36116060371bdc99405ea759
Signed-off-by: Ayush Kumar <ayushkr@codeaurora.org>
Signed-off-by: Vishalsingh Hajeri <vhajeri@codeaurora.org>
IFE Query cap currently gives only IFE Full Information. Update the
code to return IFE Full, IFE lite, full IFE-CSID and IFE-CSID lite
information in return of the IFE Query cap command.
CRs-Fixed: 2647995
Change-Id: I84cf5b766ce191aacad4a1de478c6eebafe917b3
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
Aligns the uapi header types and includes to be in-line with upstream
kernel formatting. The errors are given by enabling the UAPI_HEADER_TEST
config, which is now enabled in GKI builds.
CRs-Fixed: 2679250
Change-Id: I195fb2aab9251043fc63d79dd31f2db53b1228f5
Signed-off-by: Karthik Jayakumar <kjayakum@codeaurora.org>
This change adds blob support to disable CSID EOT IRQ
in case of high data rate sensors which sends
EPD instead of EOT.
CRs-Fixed: 2566158
Change-Id: I8ac6d2281a6510d3702f3b651e2c7ca2391afe6c
Signed-off-by: Prakasha Nayak <pnayak@codeaurora.org>
As part of acquire HW, kernel passes the IFE hw_idx to
userspace. This change will enable the capability to pass
the hw_idx of additional IFE HW enabled.
CRs-Fixed: 2582959
Change-Id: I689b99d021c8d0f3440e46d09a5dcda3daaefcfc
Signed-off-by: Vishalsingh Hajeri <vhajeri@codeaurora.org>
Added a camera subfolder for the UAPI headers to be located in.
This prevents the camera UAPI headers from overwriting upstream kernel
headers.
CRs-Fixed: 2554484
Change-Id: Ie1edbfe585bbd428a6e5d1a40b438d22bd7c06c0
Signed-off-by: Karthik Jayakumar <kjayakum@codeaurora.org>