[PATCH 2/4] drm/amdgpu: use the idle engine 0/1 for page ring 0/1
Christian König
ckoenig.leichtzumerken at gmail.com
Wed Dec 12 08:26:07 UTC 2018
Am 12.12.18 um 07:54 schrieb Evan Quan:
> We need new invalidation engine layout due to new SDMA page
> queues added.
>
> Change-Id: I2f3861689bffb9828c9eae744a7a0de4963ac2b6
> Signed-off-by: Evan Quan <evan.quan at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c
> index 6b1ac02a7aac..5f45894c2b81 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c
> @@ -679,7 +679,12 @@ static int gmc_v9_0_late_init(void *handle)
> struct amdgpu_ring *ring = adev->rings[i];
> unsigned vmhub = ring->funcs->vmhub;
>
> - ring->vm_inv_eng = vm_inv_eng[vmhub]++;
> + if (ring == &adev->sdma.instance[0].page)
> + ring->vm_inv_eng = 0;
> + else if (ring == &adev->sdma.instance[1].page)
> + ring->vm_inv_eng = 1;
> + else
> + ring->vm_inv_eng = vm_inv_eng[vmhub]++;
I would rather initialize vm_inv_eng to 0 and make sure that we skip 2-4.
This way we don't depend on the SDMA layout here,
Christian.
> dev_info(adev->dev, "ring %s uses VM inv eng %u on hub %u\n",
> ring->name, ring->vm_inv_eng, ring->funcs->vmhub);
> }
More information about the amd-gfx
mailing list