drm2 regression: backlight adjustment on ivybridge no longer works
Ranjan1018 .
214748mv at gmail.com
Thu Jan 29 10:46:23 UTC 2015
2015-01-28 10:11 GMT+01:00 Adrian Chadd <adrian at freebsd.org>:
> ugh, so because i can't sleep, I read the Linux i915 history for
> backlight changes.
>
> Turns out if I disable bit 30 in ivb_pch_pwm_override() to register
> BLC_PWM_PCH_CTL1, the acpi video setting works. The keyboard settings
> still don't, but I'll worry about that later.
>
> Bit 30 in the linux drm code is:
>
> #define BLM_PCH_OVERRIDE_ENABLE (1 << 30)
>
> The linux dri code doesn't set that for ivybridge - only for broadwell.
>
> (also, the linux driver has POSTING_READ() which I'm guessing is to
> ensure things made it out to the device and have been flushed before
> doing another IO operation.)
>
> I have my (via sysctl) panel backlight control working again.
>
>
>
> -adrian
>
Thank you guys,
the backlight control works again on my laptop with this patch, suggested
by Adrian :
--- sys/dev/drm2/i915/intel_display.c.orig (revision 277487)
+++ sys/dev/drm2/i915/intel_display.c (working copy)
@@ -6995,7 +6995,7 @@
*/
I915_WRITE(BLC_PWM_CPU_CTL2, PWM_ENABLE);
I915_WRITE(BLC_PWM_CPU_CTL, 0);
- I915_WRITE(BLC_PWM_PCH_CTL1, PWM_ENABLE | (1<<30));
+ I915_WRITE(BLC_PWM_PCH_CTL1, PWM_ENABLE);
}
void intel_modeset_init_hw(struct drm_device *dev)
but the patch by Andrew does not hurts:
http://foxkit.us/FreeBSD/i915-uninitialised-var-fix.diff
I am running r277871 with both patches applied.
Regards,
Maurizio
More information about the freebsd-current
mailing list