]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
drm/msm: Add PRR support
authorRob Clark <robdclark@chromium.org>
Sun, 29 Jun 2025 20:13:01 +0000 (13:13 -0700)
committerRob Clark <robin.clark@oss.qualcomm.com>
Sat, 5 Jul 2025 00:48:35 +0000 (17:48 -0700)
commitdbbde63c9e9d472743a88f975baac412ba93f29d
tree6f79b6693e7a8d306dc3443315a55823d6f9bc3b
parent2c7ad9925523f644fe808b243921ebd5c01590e5
drm/msm: Add PRR support

Add PRR (Partial Resident Region) is a bypass address which make GPU
writes go to /dev/null and reads return zero.  This is used to implement
vulkan sparse residency.

To support PRR/NULL mappings, we allocate a page to reserve a physical
address which we know will not be used as part of a GEM object, and
configure the SMMU to use this address for PRR/NULL mappings.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Signed-off-by: Rob Clark <robin.clark@oss.qualcomm.com>
Tested-by: Antonino Maniscalco <antomani103@gmail.com>
Reviewed-by: Antonino Maniscalco <antomani103@gmail.com>
Patchwork: https://patchwork.freedesktop.org/patch/661486/
drivers/gpu/drm/msm/adreno/adreno_gpu.c
drivers/gpu/drm/msm/msm_iommu.c
include/uapi/drm/msm_drm.h