
We can generate the XML if anybody actually queries it, but this reduces the amount of work in driver setup and means that we'll be able to support driconf option queries on Android without libexpat. This updates the driconf interface struct version for i965, i915, and radeon to use the new getXml entrypoint to call the on-demand xml generation. Note that our loaders (egl, glx) implement the v2 function interface and don't use .xml when that's set, and the X server doesn't use this interface at all. XML generation tested on iris and i965 using adriconf Acked-by: Eric Engestrom <eric@engestrom.ch> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6916>
43 lines
971 B
C
43 lines
971 B
C
|
|
#ifndef _DRM_DRIVER_H_
|
|
#define _DRM_DRIVER_H_
|
|
|
|
#include "pipe/p_compiler.h"
|
|
|
|
#include "winsys_handle.h"
|
|
|
|
struct pipe_screen;
|
|
struct pipe_screen_config;
|
|
struct pipe_context;
|
|
struct pipe_resource;
|
|
|
|
struct drm_driver_descriptor
|
|
{
|
|
/**
|
|
* Identifying prefix/suffix of the binary, used by the pipe-loader.
|
|
*/
|
|
const char *driver_name;
|
|
|
|
/**
|
|
* Optional pointer to the array of driOptionDescription describing
|
|
* driver-specific driconf options.
|
|
*/
|
|
const struct driOptionDescription *driconf;
|
|
|
|
/* Number of entries in the driconf array. */
|
|
unsigned driconf_count;
|
|
|
|
/**
|
|
* Create a pipe srcreen.
|
|
*
|
|
* This function does any wrapping of the screen.
|
|
* For example wrapping trace or rbug debugging drivers around it.
|
|
*/
|
|
struct pipe_screen* (*create_screen)(int drm_fd,
|
|
const struct pipe_screen_config *config);
|
|
};
|
|
|
|
extern const struct drm_driver_descriptor driver_descriptor;
|
|
|
|
#endif
|