Commit-Graf

1102 Incheckningar

Upphovsman SHA1 Meddelande Datum
Camera Software Integration
b2f5752ef5 Merge "msm: camera: isp: removed mutext lock from irq context" into camera-kernel.lnx.4.0 2020-10-16 13:17:25 -07:00
Camera Software Integration
4e289c6238 Merge "msm: camera: isp: Change csid stop sequence during flush" into camera-kernel.lnx.4.0 2020-10-16 13:17:17 -07:00
Camera Software Integration
e86cb226b6 Merge "msm: camera: tfe: Dont consider vbi for epoch configuration in case of tpg" into camera-kernel.lnx.4.0 2020-10-15 14:18:24 -07:00
Camera Software Integration
9b1afc8918 Merge "msm: camera: common: Merge camera-kernel.3.1 changes in camera-kernel.4.0" into camera-kernel.lnx.4.0 2020-10-15 14:18:14 -07:00
Ravikishore Pampana
1fa7773fb1 msm: camera: tfe: Enable only master interrupts in dual tfe usecase
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>
2020-10-15 18:11:53 +05:30
Shravya Samala
a3077c7802 msm: camera: isp: Change csid stop sequence during flush
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>
2020-10-15 17:35:36 +05:30
Vikram Sharma
5673c12086 msm: camera: isp: removed mutext lock from irq context
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>
2020-10-14 09:37:39 -07:00
Shravya Samala
3584602abf msm: camera: tfe: Dont consider vbi for epoch configuration in case of tpg
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>
2020-10-14 01:06:47 -07:00
Camera Software Integration
18ef37aa50 Merge "msm: camera: ife: Adjust epoch configuration" into camera-kernel.lnx.4.0 2020-10-13 13:23:49 -07:00
Gaurav Jindal
8974656ba9 msm: camera: ife: Detect RDI only context before acquire hw
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>
2020-10-13 16:06:44 +05:30
Tejas Prajapati
4574450a12 msm: camera: common: Merge camera-kernel.3.1 changes in camera-kernel.4.0
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>
2020-10-13 12:08:01 +05:30
Camera Software Integration
fabd1f7b0a Merge "msm: camera: cpas: Add qosgen shaping config" into camera-kernel.lnx.4.0 2020-10-12 12:55:58 -07:00
Camera Software Integration
7aaa9af364 Merge "msm: camera: cpas: Add cpas support for camera v680 platform" into camera-kernel.lnx.4.0 2020-10-12 12:55:26 -07:00
Shravya Samala
ab2e87cde1 msm: camera: ife: Adjust epoch configuration
In case if calculated epoch is more than last
active line, then there is a chance that calculated epoch
is closer to EOF. This results in missing Epoch notification
at CRM.
Check if calculated epoch is greater than half of
last active line, then configure epoch at half the active lines.

CRs-Fixed: 2781565
Change-Id: Icb44d2e0e72b4ff36bd500ce51016cce418ff205
Signed-off-by: Shravya Samala <shravyas@codeaurora.org>
2020-10-11 22:06:06 -07:00
Camera Software Integration
4e9f4848db Merge "msm: camera: csiphy: Enable dynamic clock selection for CSIPHY 1.2.4" into camera-kernel.lnx.4.0 2020-10-09 14:08:29 -07:00
Camera Software Integration
e8ff145658 Merge "msm: camera: isp: Print context on release HW error" into camera-kernel.lnx.4.0 2020-10-09 14:08:04 -07:00
Jigar Agrawal
71d305df0b msm: camera: cpas: Add cpas support for camera v680 platform
Add register info, initial QoS settings info to program
camera static settings for chipsets having camera v680.

CRs-fixed: 2792910
Change-Id: I8f054a8466035b8388ea84f3a50f562838611990
Signed-off-by: Mukund Madhusudan Atre <matre@codeaurora.org>
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
2020-10-08 14:28:28 -07:00
Camera Software Integration
8653e8f2f6 Merge "msm: camera: csid: Increment error count for ERROR_CRC and ERROR_ECC" into camera-kernel.lnx.4.0 2020-10-08 13:12:18 -07:00
Camera Software Integration
eff6ad9207 Merge "msm: camera: ope: Fix false hw hang detection" into camera-kernel.lnx.4.0 2020-10-08 13:12:10 -07:00
Camera Software Integration
19cbc40633 Merge "msm: camera: isp: Add Phy source for CPHY TPG" into camera-kernel.lnx.4.0 2020-10-08 13:12:01 -07:00
Camera Software Integration
a418ea16ac Merge "msm: camera: isp: Add BW voting path for SFE HW" into camera-kernel.lnx.4.0 2020-10-08 13:11:53 -07:00
Camera Software Integration
a7a6720c34 Merge "msm: camera: isp: Support for SFE IRQ handling" into camera-kernel.lnx.4.0 2020-10-08 13:11:42 -07:00
Camera Software Integration
9ef77e444a Merge "msm: camera: isp: Add support for SFE HW layer in ISP driver" into camera-kernel.lnx.4.0 2020-10-08 13:11:31 -07:00
Chandan Kumar Jha
6980d712c2 msm: camera: cpas: Add qosgen shaping config
Add qosgen shaping configuration setup. These parameters
will be tuned for every chipset along with other QoS
settings.

CRs-Fixed: 2787956
Change-Id: I2659192bd23f7f558554e18768e96020b929a145
Signed-off-by: Chandan Kumar Jha <cjha@codeaurora.org>
2020-10-08 19:33:33 +05:30
Shravan Nevatia
84d2833140 msm: camera: csiphy: Enable dynamic clock selection for CSIPHY 1.2.4
- Make CSIPHY 1.2.4 clock selection logic dynamic in order
to utilize the LOWSVS corner.

- Fix is_divisor_32_comp values for all PHY versions.

CRs-Fixed: 2792275
Change-Id: I66a12fe6f0e01d1a649559b9ebffff5a7c9308d5
Signed-off-by: Shravan Nevatia <snevatia@codeaurora.org>
2020-10-08 13:00:16 +05:30
Camera Software Integration
50f5e56dc3 Merge "msm: camera: reqmgr: Fix for apply stuck issue for pd 1 device" into camera-kernel.lnx.4.0 2020-10-07 12:46:06 -07:00
Mukund Madhusudan Atre
9f092f1d49 msm: camera: isp: Add BW voting path for SFE HW
Add register, start, stop and bw update/control functions.

CRs-Fixed: 2783797
Change-Id: I587e6eca66ee9d7316f2602d60bfc77b9f8704cf
Signed-off-by: Mukund Madhusudan Atre <matre@codeaurora.org>
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
2020-10-07 09:16:10 -07:00
Jigarkumar Zala
e4b180abaf msm: camera: isp: Support for SFE IRQ handling
Add irq controller support for the SFE core & bus interfaces.

CRs-Fixed: 2783797
Change-Id: I84c04a13fa26a9d040bab9e7ec7ba2d3061e1f76
Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org>
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
2020-10-07 09:14:57 -07:00
Shravya Samala
ef90082f0b msm: camera: ope: Fix false hw hang detection
While preparing config packet at HW layer,
we are setting Ope request timer even before
processing command buffer and IO cfg. This is
leading to false hw hand detection.
Expectation is Ope request timer has to
start after req is submitted to HW.

CRs-Fixed: 2788900
Change-Id: Idd1420b2ee1aed4bfe947cf5617bbec9b39147d3
Signed-off-by: Shravya Samala <shravyas@codeaurora.org>
2020-10-07 13:13:56 +05:30
Anand Ravi
8f5a2cd427 msm: camera: isp: Print context on release HW error
Print the context id in the error statement when release_hw is
called in top state with no hw resources acquired.

CRs-Fixed: 2709537
Change-Id: Ic153cc7f92cfc15a56e7989b0337a4e051af4c43
Signed-off-by: Anand Ravi <ananravi@codeaurora.org>
2020-10-06 22:58:01 -07:00
Karthik Anantha Ram
1232bfaa25 msm: camera: isp: Add support for SFE HW layer in ISP driver
Add support for SFE TOP, SFE BUS_WR & SFE BUS_RD in ISP
driver.

CRs-Fixed: 2733230
Change-Id: I85d356d28879b5cf9144a459fcdbd9f57526fa91
Signed-off-by: Karthik Anantha Ram <kartanan@codeaurora.org>
2020-10-06 21:16:33 -07:00
Camera Software Integration
fe2f879a03 Merge "msm: camera: cpas: Add fuse MP limit support" into camera-kernel.lnx.4.0 2020-10-06 12:28:40 -07:00
Camera Software Integration
36a18d2201 Merge "msm: camera: reqmgr: Reset the number of sync links" into camera-kernel.lnx.4.0 2020-10-06 12:28:31 -07:00
Camera Software Integration
19508cf8ee Merge "msm: camera: csiphy: Update the csiphy programming sequence" into camera-kernel.lnx.4.0 2020-10-06 12:28:23 -07:00
Camera Software Integration
315368fc57 Merge "msm: camera: memmgr: Add error handling get slot failure" into camera-kernel.lnx.4.0 2020-10-06 12:28:17 -07:00
Camera Software Integration
3c4241c06a Merge "msm: camera: cpas: Write qosgen registers when enabled" into camera-kernel.lnx.4.0 2020-10-06 12:28:10 -07:00
Camera Software Integration
f65a144b8c Merge "msm: camera: ope: Handle race while dumping ope req list" into camera-kernel.lnx.4.0 2020-10-06 12:28:03 -07:00
Camera Software Integration
74dece5952 Merge "msm: camera: core: Change the error logs to rate limited" into camera-kernel.lnx.4.0 2020-10-06 12:27:53 -07:00
Wyes Karny
49ea8fb393 msm: camera: reqmgr: Fix for apply stuck issue for pd 1 device
In a edge case if there are only pd 1 devices then avoid reset
slot if last buf done req if last applied req. If rd_idx is equal to
last bufdone index then reset previous slot. Based on max PD in the
link calculate max retry attempt before triggering recovery to UMD.
Also fill trigger information during notify error.

CRs-Fixed: 2776184
Change-Id: Ifabf660df7861b78e7801dc7eebe0c5e71908e74
Signed-off-by: Wyes Karny <wkarny@codeaurora.org>
2020-10-06 11:08:50 +05:30
Vikram Sharma
2c95c5a40b msm: camera: csid: Increment error count for ERROR_CRC and ERROR_ECC
This change will help recovring from multiple CRC and ECC errors.

CRs-Fixed: 2715172
Change-Id: Ie76703a100b1b90b3bf8a9c47deac1a5d5654c00
Signed-off-by: Vikram Sharma <vikramsa@codeaurora.org>
2020-10-05 02:08:15 -07:00
Wyes Karny
21feb1f651 msm: camera: isp: Add UBWC compression disable support
Adding UBWC compression disable support.

CRs-Fixed: 2789618
Change-Id: I994e6698ce945b7bed2a1207d4b52e4f10b99df1
Signed-off-by: Wyes Karny <wkarny@codeaurora.org>
2020-10-04 22:12:46 -07:00
Jigar Agrawal
d74902f0cf msm: camera: cdm: Add CDM hang detect and debug registers dump support
Add support to dump the cdm core debug registers and CDM hang detect
support for better debugging purpose in case of cdm timeout at config
ife. Add a debugfs for CDM command buffer dump for cdm hang events.
Fix the possible NULL derefernce while dumping the cdm registers.
Turn on debugfs using following command in adb shell:
echo 1 >> /sys/kernel/debug/camera_isp_ctx/enable_cdm_cmd_buffer_dump.

CRs-Fixed: 2748715, 2782720, 2770565
Change-Id: Ibb9aa1d232d742ca1b6e64c16e9718bfc0bc8624
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
2020-10-01 12:41:57 -07:00
Ravikishore Pampana
f5f9d74e97 msm: camera: core: Change the error logs to rate limited
In bubble cases and if not recovered, error logs causing
excessive logging issues. Change the error and warn logs to
rate limited in error bubble and apply failure cases.

CRs-Fixed: 2785070
Change-Id: Ia7268cfc7b672c24f3161cd65c53df5ee357e7ee
Signed-off-by: Ravikishore Pampana <rpampana@codeaurora.org>
2020-10-01 19:04:43 +05:30
Pavan Kumar Chilamkurthi
58588fb689 msm: camera: memmgr: Add error handling get slot failure
Not calling unmap_hw_va if get_slot() fails causes a stale
entry in smmu CB. since get_slot failed, memmgr table
returns error and memmgr, umd doesn't keep info about this
map entry though smmu CB still has this mapping - This
causes any further map calls on the same 'fd' as smmu
return MAP_EXISTS but CSL bookkeeping doesn't have it.

CRs-Fixed: 2788167
Change-Id: Ibb1450f089b9f175ccdbcfb4f5ecc245a5539bd1
Signed-off-by: Pavan Kumar Chilamkurthi <pchilamk@codeaurora.org>
2020-10-01 01:00:31 -07:00
Pavan Kumar Chilamkurthi
89fc8fcc81 msm: camera: cpas: Write qosgen registers when enabled
Call qosgen register update to write values into corresponding
registers.

CRs-Fixed: 2789495
Change-Id: I43eb6bc9d4cce42b78d55b4519931b15b7f6a383
Signed-off-by: Pavan Kumar Chilamkurthi <pchilamk@codeaurora.org>
2020-10-01 00:50:18 -07:00
Wyes Karny
c37f48cfc5 msm: camera: cpas: Add fuse MP limit support
If MP limit fuse feature is enabled in DTSI then
read the fuse register to get information about maximum
allowed resolution. According to that restrict CSID acquire.
Also if only DTSI based max_width is enabled then restrict acquire
with maximum allowed width.

CRs-Fixed: 2785460
Depends-on: 3349044
Change-Id: If861289aebe2921183276780a086dfa1b1d5f372
Signed-off-by: Wyes Karny <wkarny@codeaurora.org>
2020-09-30 23:27:34 -07:00
Jigar Agrawal
6588824f34 msm: camera: csiphy: Update the csiphy programming sequence
Update the csiphy 1.2.3 programming sequence.

CRs-Fixed: 2787142
Change-Id: Ie859440acb49528fd414df32c66680db93878ad6
Signed-off-by: Jigar Agrawal <jigar@codeaurora.org>
2020-09-30 20:49:36 -07:00
Camera Software Integration
6f7608c0a2 Merge "msm: camera: cci: Add CCI Global reset during CCI HW init" into camera-kernel.lnx.4.0 2020-09-30 14:04:21 -07:00
Camera Software Integration
2362ce706a Merge "msm: camera: cpas: Setting the vote level on max supported clock lvl basis" into camera-kernel.lnx.4.0 2020-09-30 14:04:13 -07:00
Camera Software Integration
13db5d3394 Merge "msm: camera: isp: Write zero to clear register after global clear command" into camera-kernel.lnx.4.0 2020-09-30 14:04:05 -07:00