On Mon, Dec 20, 2010 at 12:35 PM, Alex Deucher <alexdeucher at gmail.com> wrote:
> Only reset the grbm blocks, srbm tends to lock the GPU
> if not done properly and in most cases is not necessary.
> Also, no need to call asic init after reset the grbm blocks.
>
> Signed-off-by: Alex Deucher <alexdeucher at gmail.com>
> Cc: stable at kernel.org
> ---

Reviewed-by: Jerome Glisse <jglisse at redhat.com>

> ?drivers/gpu/drm/radeon/evergreen.c | ? 15 ---------------
> ?1 files changed, 0 insertions(+), 15 deletions(-)
>
> diff --git a/drivers/gpu/drm/radeon/evergreen.c 
> b/drivers/gpu/drm/radeon/evergreen.c
> index 901f366..8b82749 100644
> --- a/drivers/gpu/drm/radeon/evergreen.c
> +++ b/drivers/gpu/drm/radeon/evergreen.c
> @@ -2036,7 +2036,6 @@ bool evergreen_gpu_is_lockup(struct radeon_device *rdev)
> ?static int evergreen_gpu_soft_reset(struct radeon_device *rdev)
> ?{
> ? ? ? ?struct evergreen_mc_save save;
> - ? ? ? u32 srbm_reset = 0;
> ? ? ? ?u32 grbm_reset = 0;
>
> ? ? ? ?dev_info(rdev->dev, "GPU softreset \n");
> @@ -2075,16 +2074,6 @@ static int evergreen_gpu_soft_reset(struct 
> radeon_device *rdev)
> ? ? ? ?udelay(50);
> ? ? ? ?WREG32(GRBM_SOFT_RESET, 0);
> ? ? ? ?(void)RREG32(GRBM_SOFT_RESET);
> -
> - ? ? ? /* reset all the system blocks */
> - ? ? ? srbm_reset = SRBM_SOFT_RESET_ALL_MASK;
> -
> - ? ? ? dev_info(rdev->dev, " ?SRBM_SOFT_RESET=0x%08X\n", srbm_reset);
> - ? ? ? WREG32(SRBM_SOFT_RESET, srbm_reset);
> - ? ? ? (void)RREG32(SRBM_SOFT_RESET);
> - ? ? ? udelay(50);
> - ? ? ? WREG32(SRBM_SOFT_RESET, 0);
> - ? ? ? (void)RREG32(SRBM_SOFT_RESET);
> ? ? ? ?/* Wait a little for things to settle down */
> ? ? ? ?udelay(50);
> ? ? ? ?dev_info(rdev->dev, " ?GRBM_STATUS=0x%08X\n",
> @@ -2095,10 +2084,6 @@ static int evergreen_gpu_soft_reset(struct 
> radeon_device *rdev)
> ? ? ? ? ? ? ? ?RREG32(GRBM_STATUS_SE1));
> ? ? ? ?dev_info(rdev->dev, " ?SRBM_STATUS=0x%08X\n",
> ? ? ? ? ? ? ? ?RREG32(SRBM_STATUS));
> - ? ? ? /* After reset we need to reinit the asic as GPU often endup in an
> - ? ? ? ?* incoherent state.
> - ? ? ? ?*/
> - ? ? ? atom_asic_init(rdev->mode_info.atom_context);
> ? ? ? ?evergreen_mc_resume(rdev, &save);
> ? ? ? ?return 0;
> ?}
> --
> 1.7.2.3
>
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>

Reply via email to