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>
Support creating eva session via device node "boot".
It helps pre-silicon and kbdev based EVA bring up test.
Change-Id: I66f4ccf730817afd8f00f8ffeb286c7d89a69a65
Signed-off-by: George Shen <sqiao@codeaurora.org>
renamed cvp to eva for msm_eva_private.h and
other source and header depending on this file
Change-Id: I987cfedca62c82e5e26af230b4f36c84f1318a95
Signed-off-by: Yu SI <ysi@codeaurora.org>
Enabling EVA build in CRM environment. The setup can be used
to sanity check future changes.
Change-Id: If18abf7212c768c07e550678109d90d0c8519478
Signed-off-by: George Shen <sqiao@codeaurora.org>