| 1 | /* SPDX-License-Identifier: MIT */ | 
|---|
| 2 | /* | 
|---|
| 3 | * Copyright © 2021 Intel Corporation | 
|---|
| 4 | */ | 
|---|
| 5 |  | 
|---|
| 6 | #ifndef __I915_GEM_EVICT_H__ | 
|---|
| 7 | #define __I915_GEM_EVICT_H__ | 
|---|
| 8 |  | 
|---|
| 9 | #include <linux/types.h> | 
|---|
| 10 |  | 
|---|
| 11 | struct drm_mm_node; | 
|---|
| 12 | struct i915_address_space; | 
|---|
| 13 | struct i915_gem_ww_ctx; | 
|---|
| 14 | struct drm_i915_gem_object; | 
|---|
| 15 |  | 
|---|
| 16 | int __must_check i915_gem_evict_something(struct i915_address_space *vm, | 
|---|
| 17 | struct i915_gem_ww_ctx *ww, | 
|---|
| 18 | u64 min_size, u64 alignment, | 
|---|
| 19 | unsigned long color, | 
|---|
| 20 | u64 start, u64 end, | 
|---|
| 21 | unsigned flags); | 
|---|
| 22 | int __must_check i915_gem_evict_for_node(struct i915_address_space *vm, | 
|---|
| 23 | struct i915_gem_ww_ctx *ww, | 
|---|
| 24 | struct drm_mm_node *node, | 
|---|
| 25 | unsigned int flags); | 
|---|
| 26 | int i915_gem_evict_vm(struct i915_address_space *vm, | 
|---|
| 27 | struct i915_gem_ww_ctx *ww, | 
|---|
| 28 | struct drm_i915_gem_object **busy_bo); | 
|---|
| 29 |  | 
|---|
| 30 | #endif /* __I915_GEM_EVICT_H__ */ | 
|---|
| 31 |  | 
|---|