diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c index 85003bf3..54e45ffd 100644 --- a/src/sna/sna_display.c +++ b/src/sna/sna_display.c @@ -447,6 +447,14 @@ sna_output_backlight_get_max(xf86OutputPtr output) char path[1024], val[BACKLIGHT_VALUE_LEN]; int fd, max = 0; + /* We are used as an initial check to see if we can + * control the backlight, so first test if we can set values. + */ + sprintf(path, "%s/%s/brightness", + BACKLIGHT_CLASS, sna_output->backlight_iface); + if (access(path, R_OK | W_OK)) + return -1; + sprintf(path, "%s/%s/max_brightness", BACKLIGHT_CLASS, sna_output->backlight_iface); fd = open(path, O_RDONLY);