1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Copyright © 2021 Intel Corporation
4  */
5 
6 #ifndef _I915_GEM_TTM_PM_H_
7 #define _I915_GEM_TTM_PM_H_
8 
9 #include <linux/types.h>
10 
11 struct intel_memory_region;
12 struct drm_i915_gem_object;
13 
14 #define I915_TTM_BACKUP_ALLOW_GPU BIT(0)
15 #define I915_TTM_BACKUP_PINNED    BIT(1)
16 
17 int i915_ttm_backup_region(struct intel_memory_region *mr, u32 flags);
18 
19 void i915_ttm_recover_region(struct intel_memory_region *mr);
20 
21 int i915_ttm_restore_region(struct intel_memory_region *mr, u32 flags);
22 
23 /* Internal I915 TTM functions below. */
24 void i915_ttm_backup_free(struct drm_i915_gem_object *obj);
25 
26 #endif
27