drm/i915/bdw: GEN8 backlight support
authorBen Widawsky <benjamin.widawsky@intel.com>
Mon, 11 Nov 2013 09:12:57 +0000 (11:12 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 14 Nov 2013 08:33:09 +0000 (09:33 +0100)
commitf8e100621b072384ec1180563d933e86e2f7e2d5
tree5a1e0d58e8bd04c82aab0bdefd604f5b28a04ce5
parent5dd8c4c3f18b2ebf3f5303c7c273396441db6c6c
drm/i915/bdw: GEN8 backlight support

Prior to Haswell the CPU control register for backlight
(BLC_PWM_CPU_CTL) toggled the PCH baclight pin for us. This made some
sense as there was no pin on the CPU. With Haswell came the introduction
of a CPU backlight pin, but the interface was still controlled by
software with the same mechnism. Behind the scenes, hardware did all the
dirty work for us.

Broadwell no longer provides this for free. If we want to use the PCH
backlight pin [1] then we have to set the override bit BLC_PWM_PCH_CTL1
and program BLC_PWM_PCH_CTL2 for the PWM values.

This patch implements that. This patch is compile tested only, and given
that I rarely if ever touch this code, careful review is welcome.

[1] According to Art, we know of no devices that exist which use the CPU
pin (and remember it has existed already on HSW). If such a device does
exist, we'll have to handle it properly - this is left as TODO until
then.

v2: Drop the abstraction prep patch, as a bigger backlight overhaul is
    in the works, and do just the mimimal bdw enabling now. (by Jani)

CC: Art Runyan <arthur.j.runyan@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_panel.c