mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-27 06:10:13 +01:00
This allows a more generic mechanism for passing user configurations into drivers by accessing the dri options directly. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
44 lines
923 B
C
44 lines
923 B
C
|
|
#include "target-helpers/inline_debug_helper.h"
|
|
#include "state_tracker/drm_driver.h"
|
|
#include "freedreno/drm/freedreno_drm_public.h"
|
|
|
|
static struct pipe_screen *
|
|
create_screen(int fd, const struct pipe_screen_config *config)
|
|
{
|
|
struct pipe_screen *screen;
|
|
|
|
screen = fd_drm_screen_create(fd);
|
|
if (!screen)
|
|
return NULL;
|
|
|
|
screen = debug_screen_wrap(screen);
|
|
|
|
return screen;
|
|
}
|
|
|
|
static const struct drm_conf_ret throttle_ret = {
|
|
.type = DRM_CONF_INT,
|
|
.val.val_int = 2,
|
|
};
|
|
|
|
static const struct drm_conf_ret share_fd_ret = {
|
|
.type = DRM_CONF_BOOL,
|
|
.val.val_bool = true,
|
|
};
|
|
|
|
static const struct drm_conf_ret *drm_configuration(enum drm_conf conf)
|
|
{
|
|
switch (conf) {
|
|
case DRM_CONF_THROTTLE:
|
|
return &throttle_ret;
|
|
case DRM_CONF_SHARE_FD:
|
|
return &share_fd_ret;
|
|
default:
|
|
break;
|
|
}
|
|
return NULL;
|
|
}
|
|
|
|
PUBLIC
|
|
DRM_DRIVER_DESCRIPTOR("msm", create_screen, drm_configuration)
|