浏览代码

drm/radeon: fill in rb backend map on evergreen/ni.

This looks to have never gotten filled in, and it seems to
 trigger a bug in mesa.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Reported-by: Roland Scheidegger <sroland@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Dave Airlie 7 年之前
父节点
当前提交
8159e50920
共有 2 个文件被更改,包括 2 次插入0 次删除
  1. 1 0
      drivers/gpu/drm/radeon/evergreen.c
  2. 1 0
      drivers/gpu/drm/radeon/ni.c

+ 1 - 0
drivers/gpu/drm/radeon/evergreen.c

@@ -3513,6 +3513,7 @@ static void evergreen_gpu_init(struct radeon_device *rdev)
 		tmp = r6xx_remap_render_backend(rdev, tmp, rdev->config.evergreen.max_backends,
 		tmp = r6xx_remap_render_backend(rdev, tmp, rdev->config.evergreen.max_backends,
 						EVERGREEN_MAX_BACKENDS, disabled_rb_mask);
 						EVERGREEN_MAX_BACKENDS, disabled_rb_mask);
 	}
 	}
+	rdev->config.evergreen.backend_map = tmp;
 	WREG32(GB_BACKEND_MAP, tmp);
 	WREG32(GB_BACKEND_MAP, tmp);
 
 
 	WREG32(CGTS_SYS_TCC_DISABLE, 0);
 	WREG32(CGTS_SYS_TCC_DISABLE, 0);

+ 1 - 0
drivers/gpu/drm/radeon/ni.c

@@ -1148,6 +1148,7 @@ static void cayman_gpu_init(struct radeon_device *rdev)
 						rdev->config.cayman.max_shader_engines,
 						rdev->config.cayman.max_shader_engines,
 						CAYMAN_MAX_BACKENDS, disabled_rb_mask);
 						CAYMAN_MAX_BACKENDS, disabled_rb_mask);
 	}
 	}
+	rdev->config.cayman.backend_map = tmp;
 	WREG32(GB_BACKEND_MAP, tmp);
 	WREG32(GB_BACKEND_MAP, tmp);
 
 
 	cgts_tcc_disable = 0xffff0000;
 	cgts_tcc_disable = 0xffff0000;