Skip to contentSkip to conversation

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

PATCH Applied Dave Airlie 3 participants 3 messages Jan 9, 2018 – Jan 11, 2018

Subsystems (2)
lore
Share & tools
lore

Dave Airlie

author maintainer
#0 lore raw

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

From: Dave Airlie <[email protected]>

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

---
 drivers/gpu/drm/radeon/evergreen.c | 1 +
 drivers/gpu/drm/radeon/ni.c        | 1 +
 2 files changed, 2 insertions(+)
drivers/gpu/drm/radeon/evergreen.c +1 -0
index 24fe66c..5712d63 100644
@@ -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,
 						EVERGREEN_MAX_BACKENDS, disabled_rb_mask);
 	}
+	rdev->config.evergreen.backend_map = tmp;
 	WREG32(GB_BACKEND_MAP, tmp);
 
 	WREG32(CGTS_SYS_TCC_DISABLE, 0);
drivers/gpu/drm/radeon/ni.c +1 -0
index 9eccd0c..381b0255 100644
@@ -1148,6 +1148,7 @@ static void cayman_gpu_init(struct radeon_device *rdev)
 						rdev->config.cayman.max_shader_engines,
 						CAYMAN_MAX_BACKENDS, disabled_rb_mask);
 	}
+	rdev->config.cayman.backend_map = tmp;
 	WREG32(GB_BACKEND_MAP, tmp);
 
 	cgts_tcc_disable = 0xffff0000;
Signature · 6 lines
2.9.5

_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel
Reviewed-by on v1 1/1
#1 lore raw

FWIW I was wrong that it was never filled in - when the backend map query was introduced, the data indeed got filled in. However that got lost very soon afterwards (over 6 years ago) by some fixes for backend map calculation.
In any case,

Am 09.01.2018 um 04:43 schrieb Dave Airlie:

Quoted 30 lines

From: Dave Airlie <[email protected]>

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

---
 drivers/gpu/drm/radeon/evergreen.c | 1 +
 drivers/gpu/drm/radeon/ni.c        | 1 +
 2 files changed, 2 insertions(+)
drivers/gpu/drm/radeon/evergreen.c +1 -0
index 24fe66c..5712d63 100644
@@ -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,
 						EVERGREEN_MAX_BACKENDS, disabled_rb_mask);
 	}
+	rdev->config.evergreen.backend_map = tmp;
 	WREG32(GB_BACKEND_MAP, tmp);
 
 	WREG32(CGTS_SYS_TCC_DISABLE, 0);
drivers/gpu/drm/radeon/ni.c +0 -0
index 9eccd0c..381b0255 100644

drivers/gpu/drm/radeon/ni.c static void cayman_gpu_init(struct radeon_device *rdev) · line 1154

Quoted 7 lines
drivers/gpu/drm/radeon/ni.c +1 -0
@@ -1148,6 +1148,7 @@ static void cayman_gpu_init(struct radeon_device *rdev)
 						rdev->config.cayman.max_shader_engines,
 						CAYMAN_MAX_BACKENDS, disabled_rb_mask);
 	}
+	rdev->config.cayman.backend_map = tmp;
 	WREG32(GB_BACKEND_MAP, tmp);
 
 	cgts_tcc_disable = 0xffff0000;

_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Applied
#2 lore raw

Applied. thanks!

Alex

Quoted 43 lines · Roland Scheidegger

FWIW I was wrong that it was never filled in - when the backend map query was introduced, the data indeed got filled in. However that got lost very soon afterwards (over 6 years ago) by some fixes for backend map calculation.
In any case,

Am 09.01.2018 um 04:43 schrieb Dave Airlie:

Quoted 35 lines

From: Dave Airlie <[email protected]>

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

---
 drivers/gpu/drm/radeon/evergreen.c | 1 +
 drivers/gpu/drm/radeon/ni.c        | 1 +
 2 files changed, 2 insertions(+)
drivers/gpu/drm/radeon/evergreen.c +1 -0
index 24fe66c..5712d63 100644
@@ -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,
                                              EVERGREEN_MAX_BACKENDS, disabled_rb_mask);
      }
+     rdev->config.evergreen.backend_map = tmp;
      WREG32(GB_BACKEND_MAP, tmp);
 
      WREG32(CGTS_SYS_TCC_DISABLE, 0);
drivers/gpu/drm/radeon/ni.c +1 -0
index 9eccd0c..381b0255 100644
@@ -1148,6 +1148,7 @@ static void cayman_gpu_init(struct radeon_device *rdev)
                                              rdev->config.cayman.max_shader_engines,
                                              CAYMAN_MAX_BACKENDS, disabled_rb_mask);
      }
+     rdev->config.cayman.backend_map = tmp;
      WREG32(GB_BACKEND_MAP, tmp);
 
Quoted 7 lines

drivers/gpu/drm/radeon/ni.c static void cayman_gpu_init(struct radeon_device *rdev) · line 1154

Quoted 2 lines
drivers/gpu/drm/radeon/ni.c +0 -0
      cgts_tcc_disable = 0xffff0000;

_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel

_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel