From 95a494c73e8c04dc63b9e0879fc60388f1277986 Mon Sep 17 00:00:00 2001 From: Nicolas Aguirre Date: Fri, 27 Nov 2015 09:53:21 +0100 Subject: [PATCH] eeze: add case for Graphics subsystems in eeze_udev_find_by_type Add code to detect Graphics subsystem, i.e framebuffer devices /dev/fbX in eeze. This will be used in Ecore-Fb to detect the framebuffers present on the system. @feature Signed-off-by: Nicolas Aguirre Signed-off-by: Cedric BAIL --- src/lib/eeze/Eeze.h | 6 +++++- src/lib/eeze/eeze_udev_find.c | 5 +++++ src/lib/eeze/eeze_udev_watch.c | 10 ++++++++++ 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/lib/eeze/Eeze.h b/src/lib/eeze/Eeze.h index 39096a0ce8..b44a1d0504 100644 --- a/src/lib/eeze/Eeze.h +++ b/src/lib/eeze/Eeze.h @@ -274,7 +274,11 @@ typedef enum /** - Leds * @since 1.12 */ - EEZE_UDEV_TYPE_LEDS + EEZE_UDEV_TYPE_LEDS, + /** - Graphics + * @since 1.18 + */ + EEZE_UDEV_TYPE_GRAPHICS } Eeze_Udev_Type; /**@}*/ diff --git a/src/lib/eeze/eeze_udev_find.c b/src/lib/eeze/eeze_udev_find.c index 3df74cd938..8850882938 100644 --- a/src/lib/eeze/eeze_udev_find.c +++ b/src/lib/eeze/eeze_udev_find.c @@ -246,6 +246,10 @@ eeze_udev_find_by_type(Eeze_Udev_Type etype, udev_enumerate_add_match_subsystem(en, "leds"); break; + case EEZE_UDEV_TYPE_GRAPHICS: + udev_enumerate_add_match_subsystem(en, "graphics"); + break; + default: break; } @@ -257,6 +261,7 @@ eeze_udev_find_by_type(Eeze_Udev_Type etype, devname = udev_list_entry_get_name(cur); device = udev_device_new_from_syspath(udev, devname); + if (etype == EEZE_UDEV_TYPE_IS_IT_HOT_OR_IS_IT_COLD_SENSOR) /* ensure that temp input exists somewhere in this device chain */ { Eina_Bool one, two; diff --git a/src/lib/eeze/eeze_udev_watch.c b/src/lib/eeze/eeze_udev_watch.c index 5a477b92e1..bc00618473 100644 --- a/src/lib/eeze/eeze_udev_watch.c +++ b/src/lib/eeze/eeze_udev_watch.c @@ -257,6 +257,12 @@ _get_syspath_from_watch(void *data, goto error; break; + case EEZE_UDEV_TYPE_GRAPHICS: + if ((!(test = udev_device_get_subsystem(device))) + || (strcmp(test, "graphics"))) + goto error; + break; + default: break; } @@ -341,6 +347,10 @@ eeze_udev_watch_add(Eeze_Udev_Type type, udev_monitor_filter_add_match_subsystem_devtype(mon, "drm", NULL); break; + case EEZE_UDEV_TYPE_GRAPHICS: + udev_monitor_filter_add_match_subsystem_devtype(mon, "graphics", NULL); + break; + default: break; }