aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c')
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c b/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c
index 7177eecb8c9f..21111fd091f9 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c
@@ -185,6 +185,22 @@ static const struct ttm_place evictable_placement_flags[] = {
185 } 185 }
186}; 186};
187 187
188static const struct ttm_place nonfixed_placement_flags[] = {
189 {
190 .fpfn = 0,
191 .lpfn = 0,
192 .flags = TTM_PL_FLAG_SYSTEM | TTM_PL_FLAG_CACHED
193 }, {
194 .fpfn = 0,
195 .lpfn = 0,
196 .flags = VMW_PL_FLAG_GMR | TTM_PL_FLAG_CACHED
197 }, {
198 .fpfn = 0,
199 .lpfn = 0,
200 .flags = VMW_PL_FLAG_MOB | TTM_PL_FLAG_CACHED
201 }
202};
203
188struct ttm_placement vmw_evictable_placement = { 204struct ttm_placement vmw_evictable_placement = {
189 .num_placement = 4, 205 .num_placement = 4,
190 .placement = evictable_placement_flags, 206 .placement = evictable_placement_flags,
@@ -213,6 +229,13 @@ struct ttm_placement vmw_mob_ne_placement = {
213 .busy_placement = &mob_ne_placement_flags 229 .busy_placement = &mob_ne_placement_flags
214}; 230};
215 231
232struct ttm_placement vmw_nonfixed_placement = {
233 .num_placement = 3,
234 .placement = nonfixed_placement_flags,
235 .num_busy_placement = 1,
236 .busy_placement = &sys_placement_flags
237};
238
216struct vmw_ttm_tt { 239struct vmw_ttm_tt {
217 struct ttm_dma_tt dma_ttm; 240 struct ttm_dma_tt dma_ttm;
218 struct vmw_private *dev_priv; 241 struct vmw_private *dev_priv;
@@ -841,6 +864,7 @@ static void vmw_move_notify(struct ttm_buffer_object *bo,
841 */ 864 */
842static void vmw_swap_notify(struct ttm_buffer_object *bo) 865static void vmw_swap_notify(struct ttm_buffer_object *bo)
843{ 866{
867 vmw_resource_swap_notify(bo);
844 (void) ttm_bo_wait(bo, false, false); 868 (void) ttm_bo_wait(bo, false, false);
845} 869}
846 870