radeon: only init surface manage on r600

r300 fails to init the manager and then fails to init.

Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
Dave Airlie 2012-02-07 14:19:28 +00:00
parent 2470e918cc
commit ff60bd8058

View file

@ -302,7 +302,9 @@ static void radeon_winsys_destroy(struct radeon_winsys *rws)
ws->cman->destroy(ws->cman);
ws->kman->destroy(ws->kman);
radeon_surface_manager_free(ws->surf_man);
if (ws->gen == R600) {
radeon_surface_manager_free(ws->surf_man);
}
FREE(rws);
}
@ -377,9 +379,11 @@ struct radeon_winsys *radeon_drm_winsys_create(int fd)
goto fail;
/* FIXME check for libdrm version ?? */
ws->surf_man = radeon_surface_manager_new(fd);
if (!ws->surf_man)
goto fail;
if (ws->gen == R600) {
ws->surf_man = radeon_surface_manager_new(fd);
if (!ws->surf_man)
goto fail;
}
/* Set functions. */
ws->base.destroy = radeon_winsys_destroy;