linux/Documentation/DocBook
Lionel Landwerlin 5488dc16fd drm: introduce pipe color correction properties
Patch based on a previous series by Shashank Sharma.

This introduces optional properties to enable color correction at the
pipe level. It relies on 3 transformations applied to every pixels
displayed. First a lookup into a degamma table, then a multiplication
of the rgb components by a 3x3 matrix and finally another lookup into
a gamma table.

The following properties can be added to a pipe :
  - DEGAMMA_LUT : blob containing degamma LUT
  - DEGAMMA_LUT_SIZE : number of elements in DEGAMMA_LUT
  - CTM : transformation matrix applied after the degamma LUT
  - GAMMA_LUT : blob containing gamma LUT
  - GAMMA_LUT_SIZE : number of elements in GAMMA_LUT

DEGAMMA_LUT_SIZE and GAMMA_LUT_SIZE are read only properties, set by
the driver to tell userspace applications what sizes should be the
lookup tables in DEGAMMA_LUT and GAMMA_LUT.

A helper is also provided so legacy gamma correction is redirected
through these new properties.

v2: Register LUT size properties as range

v3: Fix round in drm_color_lut_get_value() helper
    More docs on how degamma/gamma properties are used

v4: Update contributors

v5: Rename CTM_MATRIX property to CTM (Doh!)
    Add legacy gamma_set atomic helper
    Describe CTM/LUT acronyms in the kernel doc

v6: Fix missing blob unref in drm_atomic_helper_crtc_reset

Signed-off-by: Shashank Sharma <shashank.sharma@intel.com>
Signed-off-by: Kumar, Kiran S <kiran.s.kumar@intel.com>
Signed-off-by: Kausal Malladi <kausalmalladi@gmail.com>
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Acked-by: Rob Bradford <robert.bradford@intel.com>
[danvet: CrOS maintainers are also happy with the userspacde side:
https://codereview.chromium.org/1182063002/ ]
Reviewed-by: Daniel Stone <daniels@collabora.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1456506302-640-4-git-send-email-lionel.g.landwerlin@intel.com
2016-03-08 13:57:32 +01:00
..
media [media] v4l: Add YUV 4:2:2 and YUV 4:4:4 tri-planar non-contiguous formats 2016-02-19 08:10:37 -02:00
.gitignore Docs/DocBook: Add .db files to .gitignore 2015-09-13 14:38:50 -06:00
80211.tmpl nl80211: allow BSS data to include CLOCK_BOOTTIME timestamp 2015-10-13 10:32:17 +02:00
Makefile DocBook: make index.html generation less verbose by default 2015-11-20 17:04:43 -07:00
alsa-driver-api.tmpl ALSA: DocBook: Add soc-ops.c and soc-compress.c 2015-10-28 12:37:50 +01:00
crypto-API.tmpl crypto: doc - make URL into hyperlink 2015-08-10 23:19:06 +08:00
debugobjects.tmpl
device-drivers.tmpl [media] v4l2-mc.h: move tuner PAD definitions to this new header 2016-02-01 07:19:44 -02:00
deviceiobook.tmpl
filesystems.tmpl doc: Update doc about journalling layer 2015-07-23 20:59:39 +02:00
gadget.tmpl Revert "DocBook: Avoid building man pages repeatedly and inconsistently" 2015-08-06 12:44:44 -06:00
genericirq.tmpl
gpu.tmpl drm: introduce pipe color correction properties 2016-03-08 13:57:32 +01:00
iio.tmpl Doc: Docbook/iio: Fix typo in iio.tmpl 2015-11-20 17:09:05 -07:00
kernel-api.tmpl Revert "DocBook: Avoid building man pages repeatedly and inconsistently" 2015-08-06 12:44:44 -06:00
kernel-hacking.tmpl
kernel-locking.tmpl
kgdb.tmpl
libata.tmpl
librs.tmpl
lsm.tmpl
media_api.tmpl [media] use https://linuxtv.org for LinuxTV URLs 2015-12-04 10:38:59 -02:00
mtdnand.tmpl mtd: nand: update the documentation to reflect framework changes 2015-12-18 11:26:01 -08:00
networking.tmpl
rapidio.tmpl
regulator.tmpl
s390-drivers.tmpl
scsi.tmpl
sh.tmpl
stylesheet.xsl DocBook: Generate consistent IDs 2015-07-10 11:03:16 -06:00
tracepoint.tmpl
uio-howto.tmpl
usb.tmpl
w1.tmpl
writing-an-alsa-driver.tmpl ALSA: Remove transfer_ack_{begin,end} callbacks from struct snd_pcm_runtime 2015-10-22 17:16:23 +02:00
writing_musb_glue_layer.tmpl
writing_usb_driver.tmpl
z8530book.tmpl