[PATCH 3/3] drm/amd/amdgpu: compute ring test fail during S4 on CI
Alex Deucher
alexdeucher at gmail.com
Tue Aug 30 05:43:02 UTC 2016
On Mon, Aug 29, 2016 at 9:21 PM, jimqu <Jim.Qu at amd.com> wrote:
> unhalt F32`s Instrction Fetch Unit after all rings are inited.
>
> Change-Id: Ib27e4e02e7e2782a9ab528f5358dce5ff2501e17
> Signed-off-by: JimQu <Jim.Qu at amd.com>
Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 12 +++++++++---
> 1 file changed, 9 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
> index f055d49..99afab8 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
> @@ -2755,8 +2755,7 @@ static int gfx_v7_0_cp_compute_resume(struct amdgpu_device *adev)
> u64 wb_gpu_addr;
> u32 *buf;
> struct bonaire_mqd *mqd;
> -
> - gfx_v7_0_cp_compute_enable(adev, true);
> + struct amdgpu_ring *ring;
>
> /* fix up chicken bits */
> tmp = RREG32(mmCP_CPF_DEBUG);
> @@ -2791,7 +2790,7 @@ static int gfx_v7_0_cp_compute_resume(struct amdgpu_device *adev)
>
> /* init the queues. Just two for now. */
> for (i = 0; i < adev->gfx.num_compute_rings; i++) {
> - struct amdgpu_ring *ring = &adev->gfx.compute_ring[i];
> + ring = &adev->gfx.compute_ring[i];
>
> if (ring->mqd_obj == NULL) {
> r = amdgpu_bo_create(adev,
> @@ -2970,6 +2969,13 @@ static int gfx_v7_0_cp_compute_resume(struct amdgpu_device *adev)
> amdgpu_bo_unreserve(ring->mqd_obj);
>
> ring->ready = true;
> + }
> +
> + gfx_v7_0_cp_compute_enable(adev, true);
> +
> + for (i = 0; i < adev->gfx.num_compute_rings; i++) {
> + ring = &adev->gfx.compute_ring[i];
> +
> r = amdgpu_ring_test_ring(ring);
> if (r)
> ring->ready = false;
> --
> 1.9.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
More information about the amd-gfx
mailing list