ecore-drm: use eeze_udev_find_by_filter() to only return relevant backlight devices

This commit is contained in:
Mike Blumenkrantz 2015-04-23 13:17:25 -04:00
parent 4d9b5b8f19
commit e6ed330dce
1 changed files with 2 additions and 4 deletions

View File

@ -335,15 +335,13 @@ _ecore_drm_output_backlight_init(Ecore_Drm_Output *output, uint32_t conn_type)
Eina_Bool found = EINA_FALSE;
const char *device, *devtype;
if (!(devs = eeze_udev_find_by_type(EEZE_UDEV_TYPE_BACKLIGHT, NULL)))
devs = eeze_udev_find_by_type(EEZE_UDEV_TYPE_LEDS, NULL);
if (!(devs = eeze_udev_find_by_filter("backlight", NULL, output->dev->drm.path)))
devs = eeze_udev_find_by_filter("leds", NULL, output->dev->drm.path);
if (!devs) return NULL;
EINA_LIST_FOREACH(devs, l, device)
{
/* ensure this backlight is owned by this output's device */
if (strncmp(device, output->dev->drm.path, strlen(output->dev->drm.path))) continue;
if (!(devtype = eeze_udev_syspath_get_sysattr(device, "type")))
continue;