Commit gráf

144 Commit-ok

Szerző SHA1 Üzenet Dátum
George Shen
b129cf0b8a msm: eva: Add vm sub-driver
Add framework for future implementation.

Change-Id: I2ba070e791320e56339c632120ffa821e57db113
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2022-04-25 20:56:22 -07:00
George Shen
81fb7564e7 msm: eva: Reuse HFI/SFR memory after SSR
Avoid realloc, remap HFI after SSR.

Change-Id: I6801b3cc33643f2936634c94cb5094fc91773348
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2022-04-05 13:25:42 -07:00
George Shen
30f964242d msm: eva: Remove unnecessary suspend warning
It always happen in TVM.

Change-Id: If77c1799cbeb7f331e2c13db1ceb9e38b1162def
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2022-04-04 21:38:14 -07:00
George Shen
7a7d1cf8b5 msm: eva: Add initial drop of VM manager
First drop for common code base.

Change-Id: If0147395cc946f1cad69c270226b0ff20e11b6ef
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2022-04-04 10:01:35 -07:00
George Shen
6492155ccc msm: eva: Add LE support
Define CONFIG_EVA_LE compiler flag.
Add separate VM support module.
Define stub functions to initialize synx function table in case
SYNX is disabled.

Change-Id: I0f6b28cbd2a43cbb7f464629a329581a73c4de89
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2022-03-25 11:03:52 -07:00
George Shen
0c7f40b323 msm: eva: Validate WNCC table pointer before use
Reliably handle Kernel memory allocation failure.

Change-Id: I27fac01bf5ec45cc8d54757e245ef799f5459d1f
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2022-03-23 17:12:32 -07:00
George Shen
7cc6e333d2 msm: eva: Use rate limited printk API
Avoid potential system level RT throttling issue.

Change-Id: I0fbe198957ef9e5c21435fef2c6e8b6df551da5b
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2022-03-18 15:26:02 -07:00
qctecmdr
3e4893a08b Merge "msm: eva: Support synx version update" 2022-03-18 12:19:08 -07:00
George Shen
9d9b6bcc4f msm: eva: Update VIDEOCC register offset
CFG_SREGR is added for all cores in Kailua. Some of EVA
registers in VIDEOCC have offset down-shfited.

Change-Id: Ibd5d5153e4c633209a65abea74d97c5b39b7ea5d
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2022-03-15 22:12:49 -07:00
George Shen
8205a08975 msm: eva: Support synx version update
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>
2022-03-14 14:36:31 -07:00
George Shen
26396dd79a msm: eva: Enable EVA power colapse
Remove temporary changes for RUMI bring up.

Change-Id: Ibad6025fcc9b18d062cd46bf33f6c7e051dbf91d
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2022-02-17 10:08:39 -08:00
apreetam
adcab3bd3b msm: eva: Clean-up debugfs root
To remove debugfs root in case of failure

Change-Id: I8a9a03a45c3a2c1f5b620f55ae0f5745debf3881
Signed-off-by: Aakash Preetam <quic_apreetam@quicinc.com>
2022-02-16 00:08:38 -08:00
Sabharsh Sidhu
01c34574ca msm: eva: Add WarpNCC CPU support
Adds Out-of-Band (OOB) functionality. Adds
WarpNCC OOB processing for metadata buffer
IOVA population. Adds WarpNCC source buffer
registration that does IOVA book-keeping and
returns buffer ID to UMD.

Change-Id: I182c270454eec194f28a31c494bae0ad9eface02
Signed-off-by: Sabharsh Sidhu <quic_ssidhu@quicinc.com>
2022-02-01 14:13:13 -08:00
apreetam
2a36ba8c00 msm: eva: create debugfs root inside driver probe
To correctly place the core0 directory at debugfs root

Signed-off-by: Aakash Preetam <quic_apreetam@quicinc.com>
Change-Id: Ib08798e93b202dd07dc02a9b9034397199767900
2022-01-24 14:40:56 +05:30
George Shen
8886fdf213 msm: eva: Update tracing header file's copyright
To comply with company requirement.

Change-Id: I2fa5061bac74d0ba4e962aafb8787559763e3b4e
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2022-01-19 09:34:01 -08:00
George Shen
9bb07ce06c msm: eva: Enable EVA kernel DSP interface
Unblock DSP EVA bring up.

Change-Id: I1f8fa147c6b33799187fd3cb449f46983589b87d
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2022-01-07 15:33:35 -08:00
George Shen
6ca205da54 msm: eva: Enable all feature dependencies
Except minidump for kailua.

Change-Id: I8e0d5fe57f05a027f47088111811f362f7bf0c2f
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2022-01-05 11:07:23 -08:00
George Shen
364e984422 msm: eva: Extend timeout to wait for F/W boot
Only applicable on Pre-sil platform. Restore silicon setting later.

Change-Id: Ib1e3f4e3a5de7521e7bb36540fe8bc2c6a4342ee
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2021-12-29 12:20:48 -08:00
George Shen
c52d728376 msm: eva: Load FW as single image
The change also allows runtime change of auto-pil setting. It will
help presilicon bring up.

Change-Id: I9fd97a09e6730a2e13ae4503c74f8a2962c614c5
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2021-12-07 10:41:34 -08:00
George Shen
4477173602 msm: eva: Enable full debug traces for BU
To speed up debugging and problem fixes.

Change-Id: Ieb013696f2e33ef2781be03005ff6fedc46ab1d6
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2021-11-30 12:40:02 -08:00
George Shen
250bb8b4e1 msm: eva: Propagate tip of 1.0 to 2.0
For Kailua SoD bring up.

Change-Id: I69e41850b55c688caf40f2066ed2628c2df274a3
Signed-off-by: George Shen <quic_sqiao@quicinc.com>
2021-11-28 14:51:51 -08:00
Yu SI
40716f1fe7 msm: eva: Move eva event header to vendor
The change makes EVA kernel driver more self-contained after
removing one more dependency from kernel component.
propagated from 3858889.

Change-Id: I20d34b631f516ee917d50329081f5135a1c4bec6
Signed-off-by: Yu SI <quic_ysi@quicinc.com>
2021-11-15 22:57:26 -08:00
Yu SI
4981885760 msm: eva: merged tip from eva-kernel.lnx.1.0
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>
2021-10-27 18:14:30 -07:00
Aniruddh Sharma
05c4f32b29 msm: eva: KW Fixes for minidump
Some code cleanup to follow linux coding standards..

Change-Id: I6412ebba97646f027354944ae939004bd121feeb
Signed-off-by: Aniruddh Sharma <anirshar@codeaurora.org>
2021-10-04 14:14:44 +05:30
George Shen
2b303bbbf4 msm: eva: Validate instance before deleting
The change will avoid panic during DSP session deletion in case
an invaid instance pointer passed in. Disable suspend early
during core init.

Change-Id: I0ec1e95d17a65b26fb29c970889926d9507bf554
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-09-24 15:54:34 -07:00
George Shen
58dc151523 msm: eva: Restart EVA in case warmboot fails
Firmware cannot recover by power cycling EVA. Try cold boot.

Change-Id: I83778941f8626d4a3ee7e1f7670a64186ccde831
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-09-22 22:21:50 -07:00
qctecmdr
a8ddf13359 Merge "msm: eva: Do not allow suspend during fw loading" 2021-09-22 17:53:34 -07:00
George Shen
61ea9c1a38 msm: eva: Do not allow suspend during fw loading
Use kernel power management API to block suspend during fw loading.

Change-Id: I28e0c658d148ddf2bdb971b6a07242e1f1ff9a3c
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-09-22 16:37:57 -07:00
George Shen
bcde27147a msm: eva: Flush DSP frames at session close
Without the fix, there is chance ARP buffer was accessed after
it's unmapped in the cases DSP PD is killed unexpectedly.

Change-Id: I3480120ce95b7cde0aac5ac95f0e369e6da8ba87
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-09-22 16:27:12 -07:00
George Shen
0e72292d71 msm: eva: Avoid dereference NULL smem
Check and return error in case of NULL smem.

Change-Id: I0f1f6a0746fe2110e0f5f306c22133caba6f2d63
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-09-20 16:18:54 -07:00
George Shen
d20d1298e2 msm: eva: reset AXI and CTRL clocks
Avoid pending transaction after EVA is power off. The transactions
may be introduced by PDX FIFO CX side pointer not reset after EVA power
collapsed. PMU can turn on AXI clock on CX side. It may trigger spurious
DDR transactions that are abnormal, in our case, the write transaction
has header, but not data.

Change-Id: I1374aa5ddf64ecc56c6c806cf096bed2761fd9a7
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-09-20 11:48:46 -07:00
qctecmdr
29a77d790e Merge "msm: eva: Add NoC QoS setting" 2021-09-17 12:25:08 -07:00
George Shen
daca0bb70e msm: eva: Fixed dma_buf_vunmap failure
Use correct function signature.

Change-Id: I2975598e7366bf3a7387652f030009084a8602ff
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-09-17 09:55:21 -07:00
George Shen
f8e8640ce2 msm: eva: Add NoC QoS setting
The setting will be target specific and used to set correct
priority of EVA DDR traffic.

Change-Id: I165a761393bf9dfb4ef08482d1439959cd46baa4
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-09-16 14:10:22 -07:00
Aniruddh Sharma
b30be7e544 msm: eva: Minidump enablement for eva
Enabled FW static dump.
Enabled VA_MD for CMD and MSG queues, both for CPU and DSP.
Enabled VA_MD for debug structs.

Change-Id: I9a5a2418620cd0608b90301eefe0726a462c1ce3
Signed-off-by: Aniruddh Sharma <anirshar@codeaurora.org>
2021-09-14 09:49:24 -07:00
qctecmdr
b9eddedc29 Merge "msm: cvp: Avoid interrupting FW after WFI" 2021-09-13 11:22:00 -07:00
George Shen
bc49527660 msm: cvp: Avoid interrupting FW after WFI
Flushing debug queue may trigger interrupt to FW. So flushing it
before Tensilica going to WFI.

Change-Id: I3b93183612439d5f499a30aadea18f0c2348ee13
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-09-13 10:27:58 -07:00
qctecmdr
b758d5f436 Merge "msm: eva: Increase MAX_HFI_FENCE_SIZE to 64 in uapi" 2021-09-13 10:19:25 -07:00
Sabharsh Sidhu
ac94467aa2 msm: eva: Increase MAX_HFI_FENCE_SIZE to 64 in uapi
Increases max synx objects supported by eva_kmd_arg
from 16/2=8 to 64/2=32.

Change-Id: I8d893b829a6af5f1929298cc8562095f22b0c633
Signed-off-by: Sabharsh Sidhu <ssidhu@codeaurora.org>
2021-09-10 12:08:03 -07:00
George Shen
f8342d4cf9 msm: eva: Remove deprecated header
Allows compiling independent of synx, fastrpc and mmrm readiness.

Avoid including KP 2.0 deprecated headers.

Change-Id: Ibf026f409b7f6284705c95b01a5251ac6a498b32
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-09-09 16:34:56 -07:00
George Shen
e230150be8 msm: eva: Check files pointer before accessing it
There is a chance user process crashed when EVA is being used.
In that case, files pointer is set to NULL by kernel. Add
support of global timestamp support. Check wfi after pc ready.

Change-Id: Id01d07a79beec03e48885dd051549b5c39bc4846
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-09-09 11:12:26 -07:00
Yu SI
16375cefa4 msm: eva: reorder MMRM Dereg in release seq &cleanup
re-order the mmrm deregister call in core release sequence;
set eva mmrm client structure ptr to NULL after deregister;
re-arrange the error handling code;
in mmrm dereg check if clk enabled before call set value to 0,
since already set value to 0 once when unprepare & disable clk.

Change-Id: Ia89919e219ffda94a19b5214e91f1b3adc575086
Signed-off-by: Yu SI <ysi@codeaurora.org>
2021-08-30 00:23:34 -07:00
qctecmdr
996985c6e0 Merge "msm: eva: Flush EVA CPU DDR transactions" 2021-08-23 23:42:37 -07:00
George Shen
3eaf705b30 msm: eva: Flush EVA CPU DDR transactions
Before power collapsing EVA subsystem.

Change-Id: I84ea3278a3229346677cc28d2aec1e62bbe5868c
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-08-23 23:17:36 -07:00
Yu SI
7634c56a2a msm: eva: rm log access mmrm clientStr after dereg
Removed the logging which access mmrm eva client
structure after calling mmrm deregister.

Change-Id: I467c147bd76b980971b0ca512212292e572b1b18
Signed-off-by: Yu SI <ysi@codeaurora.org>
2021-08-23 18:38:30 -07:00
qctecmdr
d7fcae03ee Merge "msm: eva: Fix typo in DSP debug mask check" 2021-08-20 17:07:57 -07:00
qctecmdr
61ef57d730 Merge "msm: eva: mmrm set clk to 0 when disable unprepare" 2021-08-20 14:46:56 -07:00
qctecmdr
d032e23024 Merge "msm: eva: prepare enable video_cc_mvs1_clk_src" 2021-08-20 14:19:04 -07:00
George Shen
0780657491 msm: eva: Fix typo in DSP debug mask check
Don't ingore memory debugging level.

Change-Id: I2d1df82c2c7ba1741e373ab6cd69635b5f54215e
Signed-off-by: George Shen <sqiao@codeaurora.org>
2021-08-20 14:06:32 -07:00
Ronald Karyodisa
27132cb626 msm: cvp: Fix dynamic clock voting
Prevent dcvs voting below the current aggregated clock.

Change-Id: Ie3ea259521a7b241cdef40a049563f054b089687
Signed-off-by: Ronald Karyodisa <ronaldk@codeaurora.org>
2021-08-20 11:35:03 -07:00