Module: Mesa Branch: master Commit: 83b4d701c082bb43dc710be9ec423171ea11e8d1 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=83b4d701c082bb43dc710be9ec423171ea11e8d1
Author: Marek Olšák <[email protected]> Date: Sun Feb 7 20:25:01 2016 +0100 winsys/radeon: fix a wrong NUM_TILE_PIPES value from the kernel Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94019 Tested-by: Nick Sarnie <[email protected]> Reviewed-by: Michel Dänzer <[email protected]> --- src/gallium/winsys/radeon/drm/radeon_drm_winsys.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c index 35dc7e6..49c310c 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c @@ -405,6 +405,12 @@ static boolean do_winsys_init(struct radeon_drm_winsys *ws) radeon_get_drm_value(ws->fd, RADEON_INFO_NUM_TILE_PIPES, NULL, &ws->info.num_tile_pipes); + /* The kernel returns 12 for some cards for an unknown reason. + * I thought this was supposed to be a power of two. + */ + if (ws->gen == DRV_SI && ws->info.num_tile_pipes == 12) + ws->info.num_tile_pipes = 8; + if (radeon_get_drm_value(ws->fd, RADEON_INFO_BACKEND_MAP, NULL, &ws->info.r600_gb_backend_map)) ws->info.r600_gb_backend_map_valid = TRUE; _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
