summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gallium/winsys/radeon/drm/radeon_drm_bo.c2
-rw-r--r--src/gallium/winsys/radeon/drm/radeon_drm_winsys.c6
-rw-r--r--src/gallium/winsys/radeon/drm/radeon_drm_winsys.h1
-rw-r--r--src/gallium/winsys/radeon/drm/radeon_winsys.h7
4 files changed, 9 insertions, 7 deletions
diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
index 34f26bb4e0c..e6668930fa9 100644
--- a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
+++ b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
@@ -654,7 +654,7 @@ struct pb_manager *radeon_bomgr_create(struct radeon_drm_winsys *rws)
pipe_mutex_init(mgr->bo_va_mutex);
mgr->va = rws->info.r600_virtual_address;
- mgr->va_offset = rws->info.r600_va_start;
+ mgr->va_offset = rws->va_start;
list_inithead(&mgr->va_holes);
return &mgr->base;
diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c
index 0f64af58239..a2480540c40 100644
--- a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c
+++ b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c
@@ -354,12 +354,14 @@ static boolean do_winsys_init(struct radeon_drm_winsys *ws)
ws->info.r600_virtual_address = FALSE;
if (ws->info.drm_minor >= 13) {
+ uint32_t ib_vm_max_size;
+
ws->info.r600_virtual_address = TRUE;
if (!radeon_get_drm_value(ws->fd, RADEON_INFO_VA_START, NULL,
- &ws->info.r600_va_start))
+ &ws->va_start))
ws->info.r600_virtual_address = FALSE;
if (!radeon_get_drm_value(ws->fd, RADEON_INFO_IB_VM_MAX_SIZE, NULL,
- &ws->info.r600_ib_vm_max_size))
+ &ib_vm_max_size))
ws->info.r600_virtual_address = FALSE;
}
if (ws->gen == DRV_R600 && !debug_get_bool_option("RADEON_VA", FALSE))
diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.h b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.h
index a10b89074cf..1aa9cf41288 100644
--- a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.h
+++ b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.h
@@ -53,6 +53,7 @@ struct radeon_drm_winsys {
enum radeon_generation gen;
struct radeon_info info;
+ uint32_t va_start;
struct pb_manager *kman;
struct pb_manager *cman;
diff --git a/src/gallium/winsys/radeon/drm/radeon_winsys.h b/src/gallium/winsys/radeon/drm/radeon_winsys.h
index c5fec683c19..eeae724d042 100644
--- a/src/gallium/winsys/radeon/drm/radeon_winsys.h
+++ b/src/gallium/winsys/radeon/drm/radeon_winsys.h
@@ -211,14 +211,13 @@ struct radeon_info {
uint32_t r600_clock_crystal_freq;
uint32_t r600_tiling_config;
uint32_t r600_num_tile_pipes;
- uint32_t r600_backend_map;
- uint32_t r600_va_start;
- uint32_t r600_ib_vm_max_size;
uint32_t r600_max_pipes;
- boolean r600_backend_map_valid;
boolean r600_virtual_address;
boolean r600_has_dma;
+ uint32_t r600_backend_map;
+ boolean r600_backend_map_valid;
+
boolean si_tile_mode_array_valid;
uint32_t si_tile_mode_array[32];