Retrying the mutex lock, if it is not successful
in cvp_fence-wait function instead returning false.
Change-Id: I8dfb24b92eef50218d4d9a73f76c5533352a31fc
Signed-off-by: VIVEK VARDHAN JOSHI <quic_vivekvar@quicinc.com>
Returning false if mutex lock is not successful
in cvp_fence-wait function instead of sleep.
Change-Id: Ieddfb6e16c72d571646a39a63c073a1b9912b3bc
Signed-off-by: VIVEK VARDHAN JOSHI <quic_vivekvar@quicinc.com>
Instead of returning from validate session failure with SSR,
doing other required clean up.
Change-Id: I5a2baa7039bc4e23758c541af31648d58a58823c
Signed-off-by: Palak Joshi <quic_palakash@quicinc.com>
To avoid confusion in code reading and prepare for
future compatibility changes.
Change-Id: I43d61e18d2e2d75d1fd46ceb2e763511329ee32d
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
Avoid delete non-existing session and power on check before
register write.
Change-Id: I0b7d5045d68fd18e5a9a041d3ad3e37f4dac16ad
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
Avoid kernel crash due to unbalance refcount operations.
Change-Id: I280682ec3352164b62ecf3469303371f2af24a7d
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
For user mode to save into a dump file. It helps FW debugging.
Change-Id: I1c9c52d27d0dfd20e3eeb54b203416f6df095c8d
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
During message handling path.
Remove DCVS for FD.
Change-Id: Iace13914014b4305553729ac305c141433b79a8f
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
For FW to hold debug info. Simplify driver structure for easy
dump in T32.
Change-Id: Ib310a3d9fe3437d5ce49783eb813fbb2d8bd3216
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
Through POLL SSR event, only notify the error session. Other
sessions will not be impacted. This is different than SSR
handling.
Change-Id: I5acb4e21c19909b16350816621ae085d54fe05ac
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
Avoid using invalid session id in case of DSP session failed.
Increase the number of per IOCTL session properties setting
from 8 to 64.
Change-Id: Ia9979001fe6e0ed247067d7b12314c327897fead
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
Simplify code base for future generations of driver.
Change-Id: I9ed940184da3b2224c74092ac31163de29c84f64
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
Add cmd logging functionality as an
alternative to pkt logging. This has
advantages related to log dropping
and log mangling.
Change-Id: I0ff6801445821e1224f83fa7e2eb8bf8a849962b
In case of the fence command setup thread being pre-empted,
the fence command can be processed by HW even before the setup
thread returns. In that case, the setup thread may be using
wrong fence number, causing it resends the HFI packet that has
been processed. The consequence could be SMMU fault.
Change-Id: I8be9808e993a27a1c7664e68a5382d145a8bc3cc
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
Printing hfi q info at the of
session queue time out to get debug
info on missed cmd/frame pkt.
Change-Id: I9b324a6496699272f9f1b9cb794f3e322d5421ae
Signed-off-by: Nagesh Gunna <quic_ngunna@quicinc.com>
Racing happens when a new fence command submitted and flushing
is requested from a different thread.
Change-Id: I2d4f1e02c245f9a4a7eeb2e541ddb0e99b63b461
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
New HFI allows FW stop session and notify driver of
its completion. Driver is safe to reclaim resources
allocated for the session.
Change-Id: Ic6a08334a0bafd57f366a635c53f4f5f8f31f77e
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
Needs to unmap frame buffer and avoid enqueue the MSG
in session queue. In SoC fencing cases, session queue
will not be drained by UMD. It can lead to session
stop error.
Change-Id: I980689ae16286712df704f94385ca0ccfc64488a
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
propagated sync v2 support from 2.0
reference 4162025
Change-Id: I3427657e21e7eda92088d828203a330ba3c86335
Signed-off-by: Yu SI <quic_ysi@quicinc.com>
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
Add back all changes made after Aug. 3rd from
Kailua to Lanai.
Change-Id: I725b77892ab24354014b3d9bbc13d14c710aff5a
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
Adds XRA, DLFL, DLFD, RGE and ITOF packets sanity check.
Optimizes packet type table to avoid linear search during
each packet handling. Instead use packet type as index to expedite
searching. Packet type table grows to over 60 entries and each
entry uses 40B. There will be quite some memory access delay for
each packet handling without optimization.
Change-Id: I1ee26d0d5d0b83d3c15fbcafa7414017c418b6e3
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
Changes only applicable on CPU EVA path, including
- tracking packet type and buffer index for each dma_buf
- print feature config packet type
- print session properties in error cases.
Change-Id: I938cf463bee9284760145f3fd9e030b3b8134caa
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
The change makes it easier for eva driver to support backward
and forwardcompatibility of SynX versions.
Change-Id: I6382d5c904d30bd38692ce74e747749e113be621
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
merged tip source code from eva-kernel.lnx.1.0,
and verify the promotion flow.
Change-Id: I031508fd8a23995a166506f3d190e5e228eb13c2
Signed-off-by: Yu SI <ysi@codeaurora.org>
Prevent dcvs voting below the current aggregated clock.
Change-Id: Ie3ea259521a7b241cdef40a049563f054b089687
Signed-off-by: Ronald Karyodisa <ronaldk@codeaurora.org>
Add FD packet check and add log to catch the
unexpected FD packet size.
Change-Id: I794d659a2e33e5efc521d31476c6923ca5462554
Signed-off-by: Ronald Karyodisa <ronaldk@codeaurora.org>
change msg trace level to CVP_INFO
for cvp_wait_process_msg non-fatal.
Change-Id: If2e245f894d3076ed129f322e477ad5b1beead32
Signed-off-by: Yu SI <ysi@codeaurora.org>
Include new hfi packets and enable the pipeline to
dump hangdump buffers in UMD.
Change-Id: Id66538c69d3080c09c5a140dadcb0dfe87d9efc7
Signed-off-by: Karthik Nagarajan <karnagar@codeaurora.org>
Move feature configuration processing out of kmd. Relocate
feature specific code to msm_cvp_platform.c and cvp_hfi.h.
Change-Id: I425ee8b8638bd7b81c653c860f1ed1f5d95abac8
Signed-off-by: George Shen <sqiao@codeaurora.org>
Add debug option using debugfs to disable DCVS.
Add extra check for DCVS.
Change-Id: I989ef72857dde306fa0ca9466843ebc1d2b30f85
Signed-off-by: Ronald Karyodisa <ronaldk@codeaurora.org>
Initialize the sum fps calculation to avoid the
value keep increasing.
Add addional option (fps=0) to disable FD dcvs.
Fix HFI header size checking.
Change-Id: Ieb44b626a112205091327c7785a8c92c8c77c0b0
Signed-off-by: Ronald Karyodisa <ronaldk@codeaurora.org>
Enable logic to provide current eva workload.
Workload estimated across sessions at hardware block level.
Change-Id: If8729f4ecd31b05a9b232475de9c7722845b37db
Signed-off-by: Karthik Nagarajan <karnagar@codeaurora.org>
Control EVA directly through kernel driver low-level functions.
Add error handling in session creation.
Unwind task and file reference count during buffer un-mapping.
Change-Id: I1ae5ae4afd3fea8e90faee1d8fe2c1ff92eeb9c2
Signed-off-by: George Shen <sqiao@codeaurora.org>