drm/gma500: fix backlight hotkeys behaviour on netbooks
authorAnisse Astier <anisse@astier.eu>
Wed, 24 Apr 2013 15:36:01 +0000 (17:36 +0200)
committerPatrik Jakobsson <patrik.r.jakobsson@gmail.com>
Thu, 25 Apr 2013 20:11:14 +0000 (22:11 +0200)
Backlight hotkeys weren't working before on certain cedartrail laptops.

The source of this problem is that the hotkeys' ASLE opregion interrupts
were simply ignored. Driver seemed to expect the interrupt to be
associated with a pipe, but it wasn't.

Accepting the ASLE interrupt without an associated pipe event flag fixes
the issue, the backlight code is called when needed, making the
brightness keys work properly.

[patrik: This patch affects irq handling on any netbook with opregion support]

Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=833597
Reference: http://lists.freedesktop.org/archives/dri-devel/2012-July/025279.html
Cc: stable@kernel.org
Signed-off-by: Anisse Astier <anisse@astier.eu>
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
drivers/gpu/drm/gma500/psb_irq.c

index 8652cdf..029eccf 100644 (file)
@@ -211,7 +211,7 @@ irqreturn_t psb_irq_handler(DRM_IRQ_ARGS)
 
        vdc_stat = PSB_RVDC32(PSB_INT_IDENTITY_R);
 
-       if (vdc_stat & _PSB_PIPE_EVENT_FLAG)
+       if (vdc_stat & (_PSB_PIPE_EVENT_FLAG|_PSB_IRQ_ASLE))
                dsp_int = 1;
 
        /* FIXME: Handle Medfield