Mesa (master): winsys/radeon: Always report at least 1 compute unit

Tom Stellard tstellar at kemper.freedesktop.org
Mon Dec 8 23:35:48 UTC 2014


Module: Mesa
Branch: master
Commit: 0e1c085f17fdd774ff6b060dd03422e74ea3e2cc
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0e1c085f17fdd774ff6b060dd03422e74ea3e2cc

Author: Tom Stellard <thomas.stellard at amd.com>
Date:   Fri Dec  5 23:59:10 2014 +0000

winsys/radeon: Always report at least 1 compute unit

All uses of this require that the value be at least one, so it's
easier to report at least one than having to wrap all uses
in MAX2(max_compute_units, 1).

Reviewed-by: Marek Olšák <marek.olsak at amd.com>

---

 src/gallium/drivers/radeon/r600_pipe_common.c     |    2 +-
 src/gallium/winsys/radeon/drm/radeon_drm_winsys.c |    2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeon/r600_pipe_common.c b/src/gallium/drivers/radeon/r600_pipe_common.c
index 8aad178..cb17e54 100644
--- a/src/gallium/drivers/radeon/r600_pipe_common.c
+++ b/src/gallium/drivers/radeon/r600_pipe_common.c
@@ -607,7 +607,7 @@ static int r600_get_compute_param(struct pipe_screen *screen,
 	case PIPE_COMPUTE_CAP_MAX_COMPUTE_UNITS:
 		if (ret) {
 			uint32_t *max_compute_units = ret;
-			*max_compute_units = MAX2(rscreen->info.max_compute_units, 1);
+			*max_compute_units = rscreen->info.max_compute_units;
 		}
 		return sizeof(uint32_t);
 
diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c
index 3974034..75fc80f 100644
--- a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c
+++ b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c
@@ -387,6 +387,8 @@ static boolean do_winsys_init(struct radeon_drm_winsys *ws)
     radeon_get_drm_value(ws->fd, RADEON_INFO_MAX_PIPES, NULL,
                          &ws->info.r600_max_pipes);
 
+    /* All GPUs have at least one compute unit */
+    ws->info.max_compute_units = 1;
     radeon_get_drm_value(ws->fd, RADEON_INFO_ACTIVE_CU_COUNT, NULL,
                          &ws->info.max_compute_units);
 




More information about the mesa-commit mailing list