drm/i915: Drop the CONTEXT_CLONE API (v2)
[linux-2.6-microblaze.git] / drivers / gpu / drm / i915 / i915_globals.h
1 /*
2  * SPDX-License-Identifier: MIT
3  *
4  * Copyright © 2019 Intel Corporation
5  */
6
7 #ifndef _I915_GLOBALS_H_
8 #define _I915_GLOBALS_H_
9
10 #include <linux/types.h>
11
12 typedef void (*i915_global_func_t)(void);
13
14 struct i915_global {
15         struct list_head link;
16
17         i915_global_func_t shrink;
18         i915_global_func_t exit;
19 };
20
21 void i915_global_register(struct i915_global *global);
22
23 int i915_globals_init(void);
24 void i915_globals_park(void);
25 void i915_globals_unpark(void);
26 void i915_globals_exit(void);
27
28 /* constructors */
29 int i915_global_active_init(void);
30 int i915_global_context_init(void);
31 int i915_global_gem_context_init(void);
32 int i915_global_objects_init(void);
33 int i915_global_request_init(void);
34 int i915_global_scheduler_init(void);
35 int i915_global_vma_init(void);
36
37 #endif /* _I915_GLOBALS_H_ */