diff options
author | Karol Wachowski <karol.wachowski@linux.intel.com> | 2023-09-26 14:09:43 +0200 |
---|---|---|
committer | Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com> | 2023-09-27 07:40:43 +0200 |
commit | 645d694559cab36fe6a57c717efcfa27d9321396 (patch) | |
tree | ba9908c30790c1d488e98fc5de5ed8fc50b27191 /lib/slub_kunit.c | |
parent | accel/ivpu/40xx: Fix missing VPUIP interrupts (diff) | |
download | linux-645d694559cab36fe6a57c717efcfa27d9321396.tar.xz linux-645d694559cab36fe6a57c717efcfa27d9321396.zip |
accel/ivpu: Use cached buffers for FW loading
Create buffers with cache coherency on the CPU side (write-back) while
disabling snooping on the VPU side. These buffers require an explicit
cache flush after each CPU-side modification.
Configuring pages as write-combined may introduce significant delays,
potentially taking hundreds of milliseconds for 64 MB buffers.
Added internal DRM_IVPU_BO_NOSNOOP mask which disables snooping on the
VPU side. Allocate FW runtime memory buffer (64 MB) as cached with
snooping-disabled.
This fixes random long FW loading times and boot params memory
corruption on warmboot (due to missed wmb).
Fixes: 02d5b0aacd05 ("accel/ivpu: Implement firmware parsing and booting")
Signed-off-by: Karol Wachowski <karol.wachowski@linux.intel.com>
Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
Reviewed-by: Jeffrey Hugo <quic_jhugo@quicinc.com>
Signed-off-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230926120943.GD846747@linux.intel.com
Diffstat (limited to 'lib/slub_kunit.c')
0 files changed, 0 insertions, 0 deletions