[Intel-gfx] [PATCH] drm/i915: Enable GSE interrupt on BDW+

Jani Nikula jani.nikula at linux.intel.com
Fri Dec 4 04:59:11 PST 2015


On Fri, 04 Dec 2015, Daniel Vetter <daniel at ffwll.ch> wrote:
> On Wed, Dec 02, 2015 at 12:17:10AM +0200, ville.syrjala at linux.intel.com wrote:
>> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>> 
>> We've never actually enabled or unmasked the GSE interrupt on BDW+,
>> even though the interrupt handler was always prepared for it.
>> Let's enable it and see what happens.
>> 
>> Credit to Mark Kettenis who fixed this in the OpenBSD fork of the
>> driver. He reports that it fixed the "ACPI _BCM/_BCQ-based
>> brightness mechanism on a MacBookPro12,1 and a 3rd gen Lenovo X1
>> Carbon" for them.
>> 
>> References: http://lists.freedesktop.org/archives/intel-gfx/2015-December/081799.html
>> Reported-by: Mark Kettenis <mark.kettenis at xs4all.nl>
>> Cc: Mark Kettenis <mark.kettenis at xs4all.nl>
>> Cc: Jani Nikula <jani.nikula at linux.intel.com>
>> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> Oh dear, there probably goes all our backlight fun. And how did we miss
> that DE_MISC wasn't enabled for this long ... but there's indeed nothing
> else interesting in there. Imo -fixes, and cc: stable as soon as someone
> confirms it fixes something on our end too.

I think this hasn't been such a big issue for us because we've mostly
moved on to native backlight, which is not affected.

Aaron, do you have any Broadwell ACPI backlight bugs open that might be
fixed by this?


BR,
Jani.


>
> Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch>
>
> And big kudos to Mark!
>
> Cheers, Daniel
>
>> ---
>>  drivers/gpu/drm/i915/i915_irq.c | 2 ++
>>  1 file changed, 2 insertions(+)
>> 
>> diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
>> index e88d692583a5..ccdac24039e8 100644
>> --- a/drivers/gpu/drm/i915/i915_irq.c
>> +++ b/drivers/gpu/drm/i915/i915_irq.c
>> @@ -3655,6 +3655,7 @@ static void gen8_de_irq_postinstall(struct drm_i915_private *dev_priv)
>>  	uint32_t de_pipe_enables;
>>  	u32 de_port_masked = GEN8_AUX_CHANNEL_A;
>>  	u32 de_port_enables;
>> +	u32 de_misc_masked = GEN8_DE_MISC_GSE;
>>  	enum pipe pipe;
>>  
>>  	if (INTEL_INFO(dev_priv)->gen >= 9) {
>> @@ -3690,6 +3691,7 @@ static void gen8_de_irq_postinstall(struct drm_i915_private *dev_priv)
>>  					  de_pipe_enables);
>>  
>>  	GEN5_IRQ_INIT(GEN8_DE_PORT_, ~de_port_masked, de_port_enables);
>> +	GEN5_IRQ_INIT(GEN8_DE_MISC_, ~de_misc_masked, de_misc_masked);
>>  }
>>  
>>  static int gen8_irq_postinstall(struct drm_device *dev)
>> -- 
>> 2.4.10
>> 
>> _______________________________________________
>> Intel-gfx mailing list
>> Intel-gfx at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Jani Nikula, Intel Open Source Technology Center


More information about the Intel-gfx mailing list