[Intel-gfx] Color management in DRM framework

Sharma, Shashank shashank.sharma at intel.com
Thu Jun 25 09:19:45 PDT 2015


Gentle reminder for the review and comments.

For those who prefer having the design available with the mail, I am attaching a PDF copy of the design document with this mail.
It would be great for us to hear from you guys, on this.

Regards
Shashank
From: Sharma, Shashank
Sent: Monday, June 22, 2015 7:09 PM
To: robdclark at gmail.com; alexander.deucher at amd.com; bskeggs at redhat.com; dri-devel at lists.freedesktop.org
Cc: Smith, Gary K; Barnes, Jesse; Lespiau, Damien; Roper, Matthew D; Vetter, Daniel; Bhattacharjee, Susanta; Matheson, Annie J; Malladi, Kausal; Mukherjee, Indranil; Kamath, Sunil; Pillai, Manikandan K; Palleti, Avinash Reddy; R, Dhanya p
Subject: Color management in DRM framework

Hi Rob, Alex, Ben, All :)

I am Shashank Sharma, from Linux display team Intel, Bangalore.
We are planning to add a color management extension in the existing I915 driver, for Intel HWs.
Plan was to provide a color correction and enhancement interface for any Linux based userspace, based on various HW capabilities.

We are now thinking that if we can generalize this implementation, in such a way that other drivers can also utilize this, this idea can act as an extension to the DRM framework itself.
Based on that thought, We have prepared a design for the same, and a rough implementation based on this design.

Would you all be kind enough to have a look at this design, and give us some feedback, so that we can implement this in a way best suitable to most of the drivers ?
We have gone through few rounds of design discussions internally (design contributors, reviewers in CC), and we all are moreover agree on the design (few comments still in progress).

The highlights of the design:

1.       The color correction capabilities of a HW are being registered as a DRM property of a CRTC / Plane (depending on a HW)

2.       Properties will be of blob type.

3.       New data structures will be added in DRM layer, to encoder and decode color correction and enhancement data.

4.       The color correction DRM properties would look like :

a.       Palette correction / programming based color properties (like gamma correction). This can support various coefficients counts and correction values, based on the underneath HW.

b.      Color transformation matrix based color correction (CSC, wide and narrow gamut mapping)

c.       Plane level corrections like gamma correction, hue, saturation, contrast and brightness.

d.      One blob type property to showcase the color correction capabilities to the userspace, superset of all other color correction properties.

5.       The driver's init function can create the superset color property, and show its color capabilities to the userspace.

6.       Userspace can query the current color correction Or apply a new color correction using a set/get property interface.

Please find the detailed design, in this shared google document:
https://docs.google.com/document/d/1jyfNSAStKHEpmIUZd_1Gd68cPuyiyr8wmJXThSDb_2w/
Please feel free to add more people in the design discussion, once we have some basic agreement on the design, we will share the patches in dri-devel level.

Regards
Shashank



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20150625/da920a31/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Design-Color-Management-for-DRI-Devel.pdf
Type: application/pdf
Size: 748812 bytes
Desc: Design-Color-Management-for-DRI-Devel.pdf
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20150625/da920a31/attachment-0001.pdf>


More information about the Intel-gfx mailing list