[Intel-gfx] [PATCH 00/11]: Color manager framework for I915 driver

shashank.sharma at intel.com shashank.sharma at intel.com
Wed Jul 23 20:04:54 CEST 2014


From: Shashank Sharma <shashank.sharma at intel.com>

This patchset adds color-manager, a new framework in I915 driver which
adds color correction and tweak capabilities in the driver.

Color manager creates a DRM propery based interface for each color
correction, and based on the property type, registers it with each
CRTC/plane available. 

The current implementation is for valleyview family.
Valleyview supports following color correction properties:
1. CSC correction (wide gamut): This is a pipe level correction.
There are total 9 correction coefficients in form of a 3x3 matrix,
which are to be programmed on 6 correction registers. CSC correction

2. Gamma correction: This is also pipe level correction
There are total 256 palette registers, which can be programmed with
128 correction values, in 10.6 (10bit) format. The expected color
Correction can be applied using 129, 64 bit correction values.
First 128 correction values are to program palette, 129th value is for 
GCMAX register value.
correction format in a 64 bit value is: 
| <16 higher bits>| <16bit R value>|<16 bit G value>|<16 bit B value>|

3. Contrast: This is sprite plane level correction
Expected correction value is 9 bit value
Driver expects values in this format:
|bits 64:32 | bits 31:9 | 8:0 contrast correction value|

4. Brightness: This is also a sprite level correction
Expected correction value is 8 bit value
Driver expects values in this format:
|bits 64:32 | bits 31:8 | 7:0 9 bit brightness correction value|

5. Hue and saturation: This is also a sprite level correction
Expected correction value is 32 bit value
Driver expects values in this format:
|bits 64:32| bits 31:0 hs correction value|

Patches:
1. First three patches create the basic framework.
2. Next 4 add functions to do color correction per property.
3. Next 2 add interface to set property.
4. last 2 patches plug-in init and exit in modeset sequences.

Shashank Sharma (11):
  drm/i915: Color manager framework for valleyview
  drm/i915: Register pipe level color properties
  drm/i915: Register plane level color properties
  drm/i915: Add color manager CSC correction
  drm/i915: Add color manager gamma correction
  drm/i915: Add contrast and brightness correction
  drm/i915: Add hue and saturation correction
  drm/i915: Add CRTC set property functions
  drm/i915: Add set plane property functions
  drm/i915: Plug-in color manager init
  drm/i915: Plug-in color manager exit

 drivers/gpu/drm/i915/Makefile        |   3 +-
 drivers/gpu/drm/i915/i915_reg.h      |  22 +
 drivers/gpu/drm/i915/intel_clrmgr.c  | 795 +++++++++++++++++++++++++++++++++++
 drivers/gpu/drm/i915/intel_clrmgr.h  | 282 +++++++++++++
 drivers/gpu/drm/i915/intel_display.c |  50 +++
 drivers/gpu/drm/i915/intel_drv.h     |   6 +
 drivers/gpu/drm/i915/intel_sprite.c  |  45 ++
 7 files changed, 1202 insertions(+), 1 deletion(-)
 create mode 100644 drivers/gpu/drm/i915/intel_clrmgr.c
 create mode 100644 drivers/gpu/drm/i915/intel_clrmgr.h

-- 
1.9.1




More information about the Intel-gfx mailing list