• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 
2 #ifndef _DRM_DRIVER_H_
3 #define _DRM_DRIVER_H_
4 
5 #include "pipe/p_compiler.h"
6 
7 #include "winsys_handle.h"
8 
9 struct pipe_screen;
10 struct pipe_screen_config;
11 struct pipe_context;
12 struct pipe_resource;
13 
14 struct drm_driver_descriptor
15 {
16    /**
17     * Identifying prefix/suffix of the binary, used by the pipe-loader.
18     */
19    const char *driver_name;
20 
21    /**
22     * Optional pointer to the array of driOptionDescription describing
23     * driver-specific driconf options.
24     */
25    const struct driOptionDescription *driconf;
26 
27    /* Number of entries in the driconf array. */
28    unsigned driconf_count;
29 
30    /**
31     * Create a pipe srcreen.
32     *
33     * This function does any wrapping of the screen.
34     * For example wrapping trace or rbug debugging drivers around it.
35     */
36    struct pipe_screen* (*create_screen)(int drm_fd,
37                                         const struct pipe_screen_config *config);
38 };
39 
40 extern const struct drm_driver_descriptor driver_descriptor;
41 
42 #endif
43