freedreno: Implement pipe screen's get_device/driver_uuid()

v2: Don't need to prefix included uuid headers path with
    'freedreno'. (Rob Clark)

Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4565>
This commit is contained in:
Eduardo Lima Mitev 2020-06-11 18:54:10 +02:00 committed by Marge Bot
parent 6bef126c62
commit e3c39e5052
2 changed files with 20 additions and 1 deletions

View file

@ -57,6 +57,8 @@
#include "a5xx/fd5_screen.h"
#include "a6xx/fd6_screen.h"
/* for fd_get_driver/device_uuid() */
#include "common/freedreno_uuid.h"
#include "ir3/ir3_nir.h"
#include "ir3/ir3_compiler.h"
@ -820,6 +822,20 @@ static void _fd_fence_ref(struct pipe_screen *pscreen,
fd_fence_ref(ptr, pfence);
}
static void
fd_screen_get_device_uuid(struct pipe_screen *pscreen, char *uuid)
{
struct fd_screen *screen = fd_screen(pscreen);
fd_get_device_uuid(uuid, screen->gpu_id);
}
static void
fd_screen_get_driver_uuid(struct pipe_screen *pscreen, char *uuid)
{
fd_get_driver_uuid(uuid);
}
struct pipe_screen *
fd_screen_create(struct fd_device *dev, struct renderonly *ro)
{
@ -1027,6 +1043,9 @@ fd_screen_create(struct fd_device *dev, struct renderonly *ro)
pscreen->query_dmabuf_modifiers = fd_screen_query_dmabuf_modifiers;
pscreen->get_device_uuid = fd_screen_get_device_uuid;
pscreen->get_driver_uuid = fd_screen_get_driver_uuid;
slab_create_parent(&screen->transfer_pool, sizeof(struct fd_transfer), 16);
return pscreen;

View file

@ -240,7 +240,7 @@ libfreedreno = static_library(
c_args : [freedreno_c_args],
cpp_args : [freedreno_cpp_args],
gnu_symbol_visibility : 'hidden',
dependencies : [dep_libdrm, idep_nir_headers],
dependencies : [dep_libdrm, idep_nir_headers, idep_libfreedreno_common],
)
driver_freedreno = declare_dependency(