Merge tag 'selinux-pr-20190521' of git://git.kernel.org/pub/scm/linux/kernel/git...
[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 typedef void (*i915_global_func_t)(void);
11
12 struct i915_global {
13         struct list_head link;
14
15         i915_global_func_t shrink;
16         i915_global_func_t exit;
17 };
18
19 void i915_global_register(struct i915_global *global);
20
21 int i915_globals_init(void);
22 void i915_globals_park(void);
23 void i915_globals_unpark(void);
24 void i915_globals_exit(void);
25
26 /* constructors */
27 int i915_global_active_init(void);
28 int i915_global_context_init(void);
29 int i915_global_gem_context_init(void);
30 int i915_global_objects_init(void);
31 int i915_global_request_init(void);
32 int i915_global_scheduler_init(void);
33 int i915_global_vma_init(void);
34
35 #endif /* _I915_GLOBALS_H_ */