1 | /* SPDX-License-Identifier: MIT */ |
---|---|
2 | /* |
3 | * Copyright © 2021 Intel Corporation |
4 | */ |
5 | #ifndef _INTEL_REGION_TTM_H_ |
6 | #define _INTEL_REGION_TTM_H_ |
7 | |
8 | #include <linux/types.h> |
9 | |
10 | #include "i915_selftest.h" |
11 | |
12 | struct drm_i915_private; |
13 | struct intel_memory_region; |
14 | struct ttm_resource; |
15 | struct ttm_device_funcs; |
16 | |
17 | int intel_region_ttm_device_init(struct drm_i915_private *dev_priv); |
18 | |
19 | void intel_region_ttm_device_fini(struct drm_i915_private *dev_priv); |
20 | |
21 | int intel_region_ttm_init(struct intel_memory_region *mem); |
22 | |
23 | int intel_region_ttm_fini(struct intel_memory_region *mem); |
24 | |
25 | struct i915_refct_sgt * |
26 | intel_region_ttm_resource_to_rsgt(struct intel_memory_region *mem, |
27 | struct ttm_resource *res, |
28 | u32 page_alignment); |
29 | |
30 | void intel_region_ttm_resource_free(struct intel_memory_region *mem, |
31 | struct ttm_resource *res); |
32 | |
33 | int intel_region_to_ttm_type(const struct intel_memory_region *mem); |
34 | |
35 | struct ttm_device_funcs *i915_ttm_driver(void); |
36 | |
37 | #ifdef CONFIG_DRM_I915_SELFTEST |
38 | struct ttm_resource * |
39 | intel_region_ttm_resource_alloc(struct intel_memory_region *mem, |
40 | resource_size_t offset, |
41 | resource_size_t size, |
42 | unsigned int flags); |
43 | #endif |
44 | #endif /* _INTEL_REGION_TTM_H_ */ |
45 |