[PATCH 6/6] drm/msm: a5xx: Support per-instance pagetables

Mark Rutland mark.rutland at arm.com
Tue Mar 7 18:14:32 UTC 2017


On Tue, Mar 07, 2017 at 10:14:20AM -0700, Jordan Crouse wrote:
> Support per-instance pagetables for 5XX targets. Per-instance
> pagetables allow each open DRM instance to have its own VM memory
> space to prevent accidently or maliciously copying or overwriting
> buffers from other instances. It also opens the door for SVM since
> any given CPU side address can be more reliably mapped into the
> instance's GPU VM space without conflict.
> 
> To support this create a new dynamic domain (pagetable) for each open
> DRM file and map buffer objects for each instance into that pagetable.
> Use the GPU to switch to the pagetable for the instance while doing a
> submit.
> 
> Signed-off-by: Jordan Crouse <jcrouse at codeaurora.org>
> ---
>  arch/arm64/boot/dts/qcom/msm8996.dtsi     |  2 +
>  drivers/gpu/drm/msm/adreno/a5xx_gpu.c     | 64 ++++++++++++++++++++++++++++++-
>  drivers/gpu/drm/msm/adreno/a5xx_gpu.h     | 17 ++++++++
>  drivers/gpu/drm/msm/adreno/a5xx_preempt.c | 61 +++++++++++++++++++++++------
>  drivers/gpu/drm/msm/adreno/adreno_gpu.h   |  2 +
>  drivers/gpu/drm/msm/msm_drv.c             | 60 ++++++++++++++++++++++-------
>  drivers/gpu/drm/msm/msm_drv.h             |  3 ++
>  drivers/gpu/drm/msm/msm_gem_vma.c         | 38 +++++++++++++++---
>  8 files changed, 216 insertions(+), 31 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qcom/msm8996.dtsi
> index 2903020..6372f3a 100644
> --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi
> +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi
> @@ -867,7 +867,9 @@
>  
>  			qcom,skip-init;
>  			qcom,register-save;
> +

Pointless whitespace change?

>  			arm,smmu-enable-stall;
> +			qcom,dynamic;

As commented on the RFC series adding code for this property, it is at
best not clear what this means, and at present I do not beleive this
should be in the DT at all.

Thanks,
Mark.



More information about the dri-devel mailing list