Re: [PATCH 2/2] drm/radeon: SDMA fix hibernation (CI GPU family).

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jun 19, 2015 at 10:32 AM,  <j.glisse@xxxxxxxxx> wrote:
> From: Jérôme Glisse <jglisse@xxxxxxxxxx>
>
> In order for hibernation to reliably work we need to properly turn
> off the SDMA block, sadly after numerous attemps i haven't not found
> proper sequence for clean and full shutdown. So simply reset both
> SDMA block, this makes hibernation works reliably on sea island GPU
> family (CI)
>
> Hibernation and suspend to ram were tested (several times) on :
> Bonaire
> Hawaii
> Mullins
> Kaveri
> Kabini
>
> Cc: stable@xxxxxxxxxxxxxxx
> Signed-off-by: Jérôme Glisse <jglisse@xxxxxxxxxx>
> Reviewed-by: Christian König <christian.koenig@xxxxxxx>

Applied the series.  thanks!

Alex

> ---
>  drivers/gpu/drm/radeon/cik_sdma.c | 11 +++++++++++
>  1 file changed, 11 insertions(+)
>
> diff --git a/drivers/gpu/drm/radeon/cik_sdma.c b/drivers/gpu/drm/radeon/cik_sdma.c
> index f86eb54..d16f2ee 100644
> --- a/drivers/gpu/drm/radeon/cik_sdma.c
> +++ b/drivers/gpu/drm/radeon/cik_sdma.c
> @@ -268,6 +268,17 @@ static void cik_sdma_gfx_stop(struct radeon_device *rdev)
>         }
>         rdev->ring[R600_RING_TYPE_DMA_INDEX].ready = false;
>         rdev->ring[CAYMAN_RING_TYPE_DMA1_INDEX].ready = false;
> +
> +       /* FIXME use something else than big hammer but after few days can not
> +        * seem to find good combination so reset SDMA blocks as it seems we
> +        * do not shut them down properly. This fix hibernation and does not
> +        * affect suspend to ram.
> +        */
> +       WREG32(SRBM_SOFT_RESET, SOFT_RESET_SDMA | SOFT_RESET_SDMA1);
> +       (void)RREG32(SRBM_SOFT_RESET);
> +       udelay(50);
> +       WREG32(SRBM_SOFT_RESET, 0);
> +       (void)RREG32(SRBM_SOFT_RESET);
>  }
>
>  /**
> --
> 2.1.0
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@xxxxxxxxxxxxxxxxxxxxx
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]