From: Leandro Ribeiro Date: Fri, 22 Sep 2023 01:01:32 +0000 (-0300) Subject: loader: add loader_is_device_render_capable() X-Git-Tag: upstream/23.3.3~665 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e10d8cd5dd2bd1ea5a0475d0c2160255f94643c1;p=platform%2Fupstream%2Fmesa.git loader: add loader_is_device_render_capable() Add helper function to check if a device is render-capable. Signed-off-by: Leandro Ribeiro Reviewed-by: Simon Ser Reviewed-by: Daniel Stone Part-of: --- diff --git a/src/loader/loader.c b/src/loader/loader.c index 4abb564..4b8f532 100644 --- a/src/loader/loader.c +++ b/src/loader/loader.c @@ -192,6 +192,22 @@ loader_open_render_node_platform_device(const char * const drivers[], return fd; } +bool +loader_is_device_render_capable(int fd) +{ + drmDevicePtr dev_ptr; + bool ret; + + if (drmGetDevice2(fd, 0, &dev_ptr) != 0) + return false; + + ret = (dev_ptr->available_nodes & (1 << DRM_NODE_RENDER)); + + drmFreeDevice(&dev_ptr); + + return ret; +} + char * loader_get_render_node(dev_t device) { diff --git a/src/loader/loader.h b/src/loader/loader.h index 9c50c91..8cbfb1a 100644 --- a/src/loader/loader.h +++ b/src/loader/loader.h @@ -50,6 +50,9 @@ int loader_open_render_node_platform_device(const char * const drivers[], unsigned int n_drivers); +bool +loader_is_device_render_capable(int fd); + char * loader_get_render_node(dev_t device);