Commit Graph

31 Commits

Author SHA1 Message Date
Camera Software Integration
811d02c493 Merge "msm: camera: isp: Enable format measurement in CSID" into camera-kernel.lnx.4.0 2020-06-18 17:19:48 -07:00
Camera Software Integration
19763e6bff Merge "msm: camera: cpas: Add support for holi camnoc" into camera-kernel.lnx.4.0 2020-06-18 17:19:29 -07:00
Camera Software Integration
afe7750406 Merge "msm: camera: ife: Add support for csitpg 1.3" into camera-kernel.lnx.4.0 2020-06-18 17:19:19 -07:00
Camera Software Integration
5d4113257c Merge "msm: camera: smmu: Enhance debug capability for camera memmgr" into camera-kernel.lnx.4.0 2020-06-18 17:19:03 -07:00
Karthik Anantha Ram
9f37871064 msm: camera: reqmgr: Add provision in UAPI for INIT exp timeout
Add provision in CRM link control to accept any long exposure
timeout value so that CRM can modify it's internal WD timer
during link activate.

CRs-Fixed: 2706105
Change-Id: Icedeeef32dcc5c881277f28dc2c0fbb40fa1e7f1
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
2020-06-10 16:13:19 -07:00
Suresh Vankadara
0929575916 msm: camera: cpas: Add support for holi camnoc
Holi has different version of camnoc and CPAS version
which requires separate register space and camnoc
interface changes and CPAS version change.
This change adds the same.

CRs-Fixed: 2701462
Change-Id: I9fbfab592278ba7804809872b4b4b235895477f2
Signed-off-by: Suresh Vankadara <svankada@codeaurora.org>
2020-06-09 12:12:39 +05:30
Ayush Kumar
5619922854 msm: camera: isp: Enable format measurement in CSID
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>
2020-06-08 19:48:45 -07:00
Jigar Agrawal
6de4fa2ed8 msm: camera: ife: Add support to provide IFE count in Query caps
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>
2020-06-08 14:15:40 -07:00
Vishalsingh Hajeri
346084f00a msm: camera: ife: Add support for csitpg 1.3
Add version_3 files to support next revision
of CPHY TPG. Extended capability for Multi-VC
mode of operation. Add support to handle IRQ.

CRs-Fixed: 2663712
Change-Id: I91864af6e9415e74104a6bce266dd78d5c021dc7
Signed-off-by: Vishalsingh Hajeri <vhajeri@codeaurora.org>
2020-06-08 13:52:35 -07:00
Karthik Anantha Ram
ec23ff584a msm: camera: smmu: Enhance debug capability for camera memmgr
Improve debugging infrastructure and logging for memory related
issues. There are scenarios where the fd returned after ion_alloc
exists in camera smmu table as being mapped [stale entry].
On such scenarios, this change will return a specific error code to
userspace. The change also propagates the mapped size back to
user space.

CRs-Fixed: 2663114
Change-Id: Ia797b65d1e8ded58dec5b01df07d73262c4cfa95
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
2020-06-08 10:42:33 -07:00
Trishansh Bhardwaj
172d34b6f7 msm: camera: common: Merge camera-kernel.3.1 changes in camera-kernel.4.0
msm: camera: tfe: Fix variable initialization issues
msm: camera: isp: Dual tfe event check with proper hw idx
msm: camera: smmu: Add support for non-contiguous mermory region
msm: camera: smmu: Use iommu best match algo for camera
msm: camera: ope: Optimize allocation of IO configuration
msm: camera: ope: Fix for KW Issues
msm: camera: ope: Add support for stripe level height configuration
msm: camera: tfe: Enable the delay line clc
msm: camera: ope: Fix false alarm for OPE HW timeout
msm: camera: tfe: Support register dump per request
msm: camera: ope: Increase max number of stripes
msm: camera: ope: Change packer and unpacker format in case NV12
msm: camera: tfe: Add packet code get command for tfe
msm: camera: ope: Trigger recovery in case of violation on write bus
msm: camera: ope: Protect ope hw reset with mutex
msm: camera: ope: Add a check for valid request in cdm callback
msm: camera: ope: Remove the BW & clock vote in release context
msm: camera: ope: Reduce OPE BUS memory
msm: camera: ope: Fix return value for ope acquire
msm: camera: ope: Fix false alarm for OPE request timeout
msm: camera: ope: Avoid deadlock during recovery after HW hang
msm: camera: tfe: tfe debug enhancement
msm: camera: cdm: Fix irq_data value in case of inline irq
msm: camera: flash: Switch off flash on provider crash
msm: camera: ope: Initialize ope hw mutex structure
msm: camera: cdm: Flush all available FIFOs during reset
msm: camera: cpas: Add mandatory bw option for axi ports clocks
msm: camera: ope: Use vzalloc to allocate the write bus ctx structure
msm: camera: ope: Fix handling of init hw failure
msm: camera: tfe: Enable per frame register dump for rdi only context
msm: camera: cdm: Protect cdm core status bits with mutex
msm: camera: cdm: correct the error check in cmd submit irq
msm: camera: ope: Fix unclock access during HW reset
msm: camera: ope: Program frame level settings after idle event
msm: camera: ope: Delay releasing of resources for last context
msm: camera: isp: Increase default SOF freeze timeout
msm: camera: smmu: Add map and unmap monitor
msm: camera: isp: Add trace events across ISP
msm: camera: smmu: Profile time taken for map, unmap
msm: camera: ope: Start context timer on receiving new request
msm: camera: tfe: Reduce stack size during set axi bw
msm: camera: cdm: Check for HW state before dumping registers
msm: camera: ope: Reduce stack footprint during acquire
msm: camera: tfe: Disable clock if tfe2 is not supported
msm: camera: cdm: Avoid cdm pause incase of BL submit
msm: camera: tfe: Optimize CSID IRQ logging
msm: camera: ope: Move request id validity check outside of lock
msm: camera: tfe: Correct the tfe hw manager dump logic
msm: camera: ope: Synchronize flush and submit BLs
msm: camera: cdm: Protect cdm reset status
msm: camera: cdm: Handle cdm deinit sequence properly
msm: camera: tfe: Reduce reset timeout to 100ms
msm: camera: ope: Fix hang detection
msm: camera: ope: Make non-fatal logs as debug and info logs
msm: camera: tfe: set overflow pending bit to zero after HW reset
msm: camera: ope: Do not disable CDM during error handling
msm: camera: ope: Add support for OPE Replay
msm: camera: ope: Stop OPE in case of init failure
msm: camera: ope: Synchronize process cmd and flush request
msm: camera: cdm: Fix CDM IRQ handling
msm: camera: tfe: LDAR dump for TFE
msm: camera: ope: Fix the length check for debug buffer
msm: camera: cdm: Fix CDM reset logic
msm: camera: ope: Dump debug registers in case of HW hang
msm: camera: tfe: Support the RDI bus port for line based mode
msm: camera: cdm: Handle out of order reset done events
msm: camera: ope: Consider other contexts during timeout
msm: camera: ope: Put GenIRQ in last stripe BL
msm: camera: tfe: Process the rdi interrupts for rdi only resource
msm: camera: jpeg: Check the HW state before accessing register
msm: camera: csiphy: Update csiphy power-up sequence for lito v2
msm: camera: cdm: Secure freeing of request lists using locks
msm: camera: cpas: Add support for Scuba camnoc
msm: camera: csiphy: Clear secure phy flags on release
msm: camera: tfe: validate the tfe bw num paths
msm: camera: ope: Reorder the reset order in ope acquire
msm: camera: ope: Dump debug registers in case of reset failure
msm: camera: ope: Add logic to detect hang in CDM
msm: camera: isp: Increase max count of cfg to support more init packets
msm: camera: core: Fix cpas axi clk rate overflow.

CRs-Fixed: 2668666
Change-Id: I882ca4bd117bebc7d1c62bc82299d69d7b5c9388
Signed-off-by: Trishansh Bhardwaj <tbhardwa@codeaurora.org>
2020-06-03 11:48:47 +05:30
Camera Software Integration
efaf7facfb Merge "msm: camera: sync: Add SYNC_CANCEL support in sync driver" into camera-kernel.lnx.4.0 2020-05-26 13:13:46 -07:00
Karthik Jayakumar
c6096c4e35 msm: camera: uapi: Support for UAPI_HEADER_TEST config
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>
2020-05-21 21:35:50 -07:00
Pavan Kumar Chilamkurthi
74410fea6b msm: camera: sync: Add SYNC_CANCEL support in sync driver
Add SYNC_CANCEL definition and signal CANCEL instead of
ERROR in flush cases.

CRs-Fixed: 2673810
Change-Id: I1bd83e382f9b38f5f020a5af3b883083e211e3d2
Signed-off-by: Pavan Kumar Chilamkurthi <pchilamk@codeaurora.org>
2020-05-20 12:48:36 -07:00
Jigarkumar Zala
6eded6217d msm: camera: uapi: Add support for precise flash on duration
Precise flash needs the data for time on duration from UMD.
Add the attribute to fill in by UMD. Also, updating the Macro
for the max led trigger from 3 to 2 as there are only two
physical LED channel is available.

CRs-Fixed: 2633194
Change-Id: I641e1ab42e59bc251d33a1e1dd0dff83afb5b7fb
Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org>
2020-03-11 10:02:21 -07:00
Venkat Chinta
131b4115d5 msm: camera: isp: Add support for PHY TPG
This change adds support for PHY TPG version
102 hardware.

CRs-Fixed: 2608550
Change-Id: I92387b08e8a91bb0c6a77b5301ebc30c7cb6f252
Signed-off-by: Vishalsingh Hajeri <vhajeri@codeaurora.org>
Signed-off-by: Venkat Chinta <vchinta@codeaurora.org>
Signed-off-by: Mukund Madhusudan Atre <matre@codeaurora.org>
2020-02-10 15:17:44 -08:00
Camera Software Integration
182154ab1c Merge "msm: camera: isp: Add epd Blob support" into camera-kernel.lnx.4.0 2020-02-07 15:12:59 -08:00
Prakasha Nayak
8dc1774e8b msm: camera: isp: Add epd Blob support
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>
2020-02-05 14:14:57 -08:00
Gaurav Jindal
d95d140d40 msm: camera: req_mgr: LDAR Debug framework implementation
When user space detects an error or does not receive
response for a request, Lets do a reset(LDAR) is triggered.
Before LDAR, user space sends flush command to the
kernel space.
To debug the cause for this situation and to dump
the information, user space sends a dump command to the
kernel space before sending flush.
As a part of this command, it passes the culprit request id
and the buffer into which the information can be dumped.
Kernel space traverses across the drivers and find the culprit hw
and dumps the relevant information in the buffer.
This data is written to a file for offline processing.
This commit implements the framework for traversal
across the RT and NRT devices.

CRs-Fixed: 2602180
Change-Id: I7e24006c20c23bfab163a2ad13b4ac6e2913bb9e
Signed-off-by: Gaurav Jindal <gjindal@codeaurora.org>
2020-02-05 10:50:23 -08:00
Karthik Anantha Ram
54440e3bb1 msm: camera: reqmgr: Add uapi for new v4l2 event type
Add event type to be notify custom events from the custom
driver. Also adds a new custom message definition.

CRs-Fixed: 2569823
Change-Id: I2ff701e79949ac3a467cbfe0c704065dbf0dc759
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
2020-02-03 13:52:30 -08:00
Trishansh Bhardwaj
a46b9bff7a msm: camera: ope: Add dynamic clock support
Dynamic clock and bandwidth support is added to
OPE.

CRs-Fixed: 2594541
Change-Id: Ib53ec47c7074f01f1bb55e17c97e5dacc550a129
Signed-off-by: Suresh Vankadara <svankada@codeaurora.org>
Signed-off-by: Trishansh Bhardwaj <tbhardwa@codeaurora.org>
2020-01-15 14:38:25 -08:00
Vishalsingh Hajeri
4a019e7828 msm: camera: uapi: Add flags for additional IFE HW
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>
2020-01-08 16:50:53 -08:00
Camera Software Integration
76e75c6067 Merge "msm: camera: memmgr: Add support to disable DelayedUnmap" into camera-kernel.lnx.4.0 2019-12-23 23:04:39 -08:00
Pavan Kumar Chilamkurthi
74bb0d5750 msm: camera: memmgr: Add support to disable DelayedUnmap
Add interface to umd to give an option whether to
disable Delayed Unamp feature for a given buffer
mapping. DelayedUnmap is enabled by default if
umd doesn't explicitly asks for disable.

CRs-Fixed: 2580128
Change-Id: I66f87a9dbdfc4d9cecdc02eb24c1c670c9985cae
Signed-off-by: Pavan Kumar Chilamkurthi <pchilamk@codeaurora.org>
2019-12-23 09:26:54 -08:00
Vishalsingh Hajeri
4265f73698 msm: camera: common: Enable additional IFE hw
Add IFE2 in UAPI header to return acquired IFE's
hw index to userspace.

CRs-Fixed: 2582959
Change-Id: I42de76453753245376f9a857d5a7de979da78333
Signed-off-by: Vishalsingh Hajeri <vhajeri@codeaurora.org>
2019-12-19 17:48:24 -08:00
Pavan Kumar Chilamkurthi
6b265f1750 msm: camera: tfe: Add uapi support to TFE driver
TFE is thin front end hardware that capture and process the
real time image. Support is added to enable the TFE
hardware.

CRs-Fixed: 2545590
Change-Id: Ie8efef77fabeeea28d70380c398089e6351e35e3
Signed-off-by: Ravikishore Pampana <rpampana@codeaurora.org>
Signed-off-by: Pavan Kumar Chilamkurthi <pchilamk@codeaurora.org>
2019-12-02 15:49:19 -08:00
Suresh Vankadara
02279f7bf6 msm: camera: ope: Add dynamic clock support for OPE
Dynamic clock and bandwidth support is added to
OPE.

CRs-Fixed: 2520602
Change-Id: I4ba4bb3b24e4ef47dea35810564cae69912ef72e
Signed-off-by: Suresh Vankadara <svankada@codeaurora.org>
Signed-off-by: Pavan Kumar Chilamkurthi <pchilamk@codeaurora.org>
2019-12-02 15:49:19 -08:00
Pavan Kumar Chilamkurthi
f5203c1106 msm: camera: ope: Add uapi support to OPE driver
OPE is camera offline engine, support is added
to enable camera OPE hardware.

CRs-Fixed: 2520602
Change-Id: I8b08ecb34323ee927f2be88707ad65ad2444447d
Signed-off-by: Suresh Vankadara <svankada@codeaurora.org>
Signed-off-by: Ravikishore Pampana <rpampana@codeaurora.org>
Signed-off-by: Pavan Kumar Chilamkurthi <pchilamk@codeaurora.org>
2019-12-02 15:49:10 -08:00
Abhijit Trivedi
a15be98002 UPSTREAM: 11/22/19: Merge 'quic/camera-kernel.lnx.1.0' into 'quic/camera-kernel.lnx.4.0'
* quic/camera-kernel.lnx.1.0::
  msm: camera: sensor: Support for read operation
  msm: camera: req_mgr: Fix kmem_cache definition
  msm: camera: custom: Add support for acquire_hw_v1
  msm: camera: core: Prevent crash on kref_put
  msm: camera: isp: csid hw register reset with IRQ
  msm: camera: isp: Reset overflow pending flag in start hw
  msm: camera: icp: Increase MAX_PKT_SIZE_MSGQ for ICP
  msm: camera: icp: icp debug improvement
  msm: camera: reqmgr: Improve master slave sync
  msm: camera: isp: Notify CRM to pause SOF timer after flush
  msm: camera: csiphy: Fix csiphy v1.2 skew calibration settings
  msm: camera: csiphy: Update reset sequence for csiphy v1.2
  msm: camera: csiphy: Update registers for CSIPHY v1.2
  msm: camera: reqmgr: Change v4l2 notify error log type
  msm: camera: isp: Set device enable flag after enable csid hardware

Change-Id: I52c682b36583436425d157c8927e6fbcf5bf32eb
Signed-off-by: Abhijit Trivedi <abhijitt@codeaurora.org>
2019-11-22 17:42:17 -08:00
Abhijit Trivedi
9b6110b579 UPSTREAM: 11/12/19: Merge 'quic/camera-kernel.lnx.1.0' into 'quic/camera-kernel.lnx.4.0'
* quic/camera-kernel.lnx.1.0:
  msm: camera: common: Update uapi to support custom hw features
  msm: camera: ife: calculate accurate boot timestamp at CSID SOF
  msm: camera: cpas: Update ife_rd safe lut value
  msm: camera: sensor: Remove true/false redefinitions
  msm: camera: reqmgr: Add support to modify timer for long exposure
  msm: camera: reqmgr: Add provision to obtain exposure time
  msm: camera: cpas: Fix TCSR Register programming
  msm: camera: cci: Fix cam_cci_get_subdev for conditional compilation
  msm: camera: utils: Remove deprecated clk_set_flag functions
  msm: camera: csiphy: Update DPHY combo mode sequence
  msm: camera: csiphy: Correct Dphy mission mode sequence
  msm: camera: core: Fix extraneous variable declaration
  msm: camera: icp: Remove qcom soc dependency
  msm: camera: sync: Dump fence info in case of fence exhaust
  msm: camera: icp: Use CAM_PERF for clock, bw related logs
  msm: camera: common: va_end should follow va_start
  msm: camera: common: Fix integer overflow in shift
  msm: camera: reqmgr: Remove division on uint64_t
  msm: camera: isp: Improve isp substate logging
  msm: camera: isp: Limit sof_in_epoch log to first frame
  msm: camera: jpeg: Add plane stride & slice height debug info
  msm: camera: isp: Change state immediately in flush
  msm: camera: isp: Dump isp req for cdm timeout
  msm: camera: ife: Add packing format support
  msm: camera: icp: Fix AHB, AXI voting in icp
  msm: camera: ife: Remove duplicate add to port counters
  msm: camera: csiphy: Update CPHY 3-phase registers for CSIPHY v1.2

Change-Id: I93948d5cfcf2c8dea921d34696456490abd6f1e5
Signed-off-by: Abhijit Trivedi <abhijitt@codeaurora.org>
2019-11-12 12:51:34 -08:00
Karthik Jayakumar
8d6ec3bf3c msm: camera: uapi: Add camera subfolder
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>
2019-11-01 14:03:03 -07:00