Re: [Regression 3.14-rc2] drm/i915: Brightness adjustment is broken in 945GM

From: Jani Nikula
Date: Thu Feb 13 2014 - 10:00:49 EST


On Thu, 13 Feb 2014, Luis Ortega <luiorpe1@xxxxxx> wrote:
> Hi, testing 3.14-rc2 I noticed I could not adjust the brightness of the
> screen any longer. This problem is already present in 3.14-rc1. 3.13 works fine.
>
> My hardware is a netbook with intel atom and a 945GM graphics card.
>
> I bisected the problem down to the next commit:

I dare say either your bisect went sour or you don't have 945GM. Please
verify your steps.

Please provide dmesg with drm.debug=0xe with 3.14-rc2.

BR,
Jani.

>
> bc0bb9fd1c7810407ab810d204bbaecb255fddde is the first bad commit
> commit bc0bb9fd1c7810407ab810d204bbaecb255fddde
> Author: Jani Nikula <jani.nikula@xxxxxxxxx>
> Date: Thu Nov 14 12:14:29 2013 +0200
>
> drm/i915: remove QUIRK_NO_PCH_PWM_ENABLE
>
> The quirk was added as what I'd say was a stopgap measure in
>
> commit e85843bec6c2ea7c10ec61238396891cc2b753a9
> Author: Kamal Mostafa <kamal@xxxxxxxxxxxxx>
> Date: Fri Jul 19 15:02:01 2013 -0700
>
> drm/i915: quirk no PCH_PWM_ENABLE for Dell XPS13 backlight
>
> without really digging into what was going on.
>
> Also, as mentioned in the related bug [1], having the quirk regressed
> some of the machines it was supposed to fix to begin with, and there
> were patches posted to disable the quirk on such machines [2]!
>
> The fact is, we do need the BLM_PCH_PWM_ENABLE bit set to have
> backlight. With the quirk, we've relied on BIOS to have set it, and our
> save/restore code to retain it. With the full backlight setup at enable,
> we have no place for things that rely on previous state.
>
> With the per platform hooks, we've also made a change in the PCH
> platform enable order: setting the backlight duty cycle between CPU and
> PCH PWM enable. Some experimenting and
>
> commit 770c12312ad617172b1a65b911d3e6564fc5aca8
> Author: Takashi Iwai <tiwai@xxxxxxx>
> Date: Sat Aug 11 08:56:42 2012 +0200
>
> drm/i915: Fix blank panel at reopening lid
>
> indicate that we can't set the backlight before enabling CPU PWM; the
> value just won't stick. But AFAICT we should do it before enabling the
> PCH PWM.
>
> Finally, any fallout we should fix properly, preferrably without quirks,
> and absolutely without quirks that rely on existing state. With the per
> platform hooks have much more flexibility to adjust the sequence as
> required by platforms.
>
> [1] https://bugzilla.kernel.org/show_bug.cgi?id=47941
> [2] http://lkml.kernel.org/r/1378229848-29113-1-git-send-email-kamal@xxxxxxxxxxxxx
>
> Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>
> Reviewed-by: Imre Deak <imre.deak@xxxxxxxxx>
> Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
>
>
> Additionally, when I had narrowed the problem to around 11 commits all the
> resulting kernel I compiled made the screen blink and shake from left to right
> non-stop. In the -rc kernels this doesn't happen. Thought it was worth
> mentioning.


--
Jani Nikula, Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/