All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Vetter <daniel@ffwll.ch>
To: "Bish, Jim" <jim.bish@intel.com>
Cc: "Matheson, Annie J" <annie.j.matheson@intel.com>,
	"intel-gfx@lists.freedesktop.org"
	<intel-gfx@lists.freedesktop.org>,
	"emil.l.velikov@gmail.com" <emil.l.velikov@gmail.com>,
	"dri-devel@lists.freedesktop.org"
	<dri-devel@lists.freedesktop.org>,
	"kausalmalladi@gmail.com" <kausalmalladi@gmail.com>,
	"Vetter, Daniel" <daniel.vetter@intel.com>
Subject: Re: [PATCH v7 11/25] drm/i915: Register color correction capabilities
Date: Thu, 22 Oct 2015 09:19:05 +0200	[thread overview]
Message-ID: <20151022071905.GL16848@phenom.ffwll.local> (raw)
In-Reply-To: <1445469545.2530.2.camel@intel.com>

On Wed, Oct 21, 2015 at 11:19:10PM +0000, Bish, Jim wrote:
> On Tue, 2015-10-20 at 18:04 +0530, Shashank Sharma wrote:
> > From DRM color management:
> > ============================
> > DRM color manager supports these color properties:
> > 1. "ctm": Color transformation matrix property, where a
> >    color transformation matrix of 9 correction values gets
> >    applied as correction.
> > 2. "palette_before_ctm": for corrections which get applied
> >    beore color transformation matrix correction.
> > 3. "palette_after_ctm": for corrections which get applied
> >    after color transformation matrix correction.
> > 
> > These color correction capabilities may differ per platform, 
> > supporting
> > various different no. of correction coefficients. So DRM color 
> > manager
> > support few properties using which a user space can query the 
> > platform's
> > capability, and prepare color correction accordingly.
> > These query properties are:
> > 1. cm_coeff_after_ctm_property
> > 2. cm_coeff_before_ctm_property
> >   (CTM is fix to 9 coefficients across industry)
> > 
> > Now, Intel color manager registers:
> > ======================================
> > 1. Gamma correction property as "palette_after_ctm" property
> > 2. Degamma correction capability as "palette_bafore_ctm" property
> >    capability as "palette_after_ctm" DRM color property hook.
> > 3. CSC as "ctm" property.
> > 
> > So finally, This patch does the following:
> > 1. Add a function which loads the platform's color correction
> >    capabilities in the cm_crtc_palette_capabilities_property 
> > structure.
> > 2. Attaches the cm_crtc_palette_capabilities_property to every CRTC
> >    getting initiaized.
> > 3. Adds two new parameters "num_samples_after_ctm" and
> >    "num_samples_before_ctm" in intel_device_info as gamma and
> >    degamma coefficients vary per platform basis.
> > 
> > Signed-off-by: Shashank Sharma <shashank.sharma@intel.com>
> > Signed-off-by: Kausal Malladi <kausalmalladi@gmail.com>
> > ---
> >  drivers/gpu/drm/i915/i915_drv.h            |  2 ++
> >  drivers/gpu/drm/i915/intel_color_manager.c | 31 
> > ++++++++++++++++++++++++++++++
> >  2 files changed, 33 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/i915/i915_drv.h 
> > b/drivers/gpu/drm/i915/i915_drv.h
> > index 8afda45..613bee2 100644
> > --- a/drivers/gpu/drm/i915/i915_drv.h
> > +++ b/drivers/gpu/drm/i915/i915_drv.h
> > @@ -789,6 +789,8 @@ struct intel_device_info {
> >       u8 num_sprites[I915_MAX_PIPES];
> >       u8 gen;
> >       u8 ring_mask; /* Rings supported by the HW */
> > +     u16 num_samples_after_ctm;
> > +     u16 num_samples_before_ctm;
> thought we agreed last week that num_samples was going to be 
> removed.  May be ok to handle in a later patch unless
> someone has strong objection.

That's another num_samples. The discussion was about the userspace abi on
in include/uapi.
-Daniel

> 
> Jim
> >       DEV_INFO_FOR_EACH_FLAG(DEFINE_FLAG, SEP_SEMICOLON);
> >       /* Register offsets for the various display pipes and transcoders 
> > */
> >       int pipe_offsets[I915_MAX_TRANSCODERS];
> > diff --git a/drivers/gpu/drm/i915/intel_color_manager.c 
> > b/drivers/gpu/drm/i915/intel_color_manager.c
> > index b03ee94..334bfff 100644
> > --- a/drivers/gpu/drm/i915/intel_color_manager.c
> > +++ b/drivers/gpu/drm/i915/intel_color_manager.c
> > @@ -30,4 +30,35 @@
> >  void intel_attach_color_properties_to_crtc(struct drm_device *dev,
> >               struct drm_crtc *crtc)
> >  {
> > +     struct drm_mode_config *config = &dev->mode_config;
> > +     struct drm_mode_object *mode_obj = &crtc->base;
> > +
> > +     /*
> > +     * Register:
> > +     * =========
> > +     * Gamma correction as palette_after_ctm property
> > +     * Degamma correction as palette_before_ctm property
> > +     *
> > +     * Load:
> > +     * =====
> > +     * no. of coefficients supported on this platform for gamma
> > +     * and degamma with the query properties. A user
> > +     * space agent should read these query property, and prepare
> > +     * the color correction values accordingly. Its expected from the
> > +     * driver to load the right number of coefficients during the init
> > +     * phase.
> > +     */
> > +     if (config->cm_coeff_after_ctm_property) {
> > +             drm_object_attach_property(mode_obj,
> > +                     config->cm_coeff_after_ctm_property,
> > +             INTEL_INFO(dev)->num_samples_after_ctm);
> > +             DRM_DEBUG_DRIVER("Gamma query property initialized\n");
> > +     }
> > +
> > +     if (config->cm_coeff_before_ctm_property) {
> > +             drm_object_attach_property(mode_obj,
> > +                     config->cm_coeff_before_ctm_property,
> > +             INTEL_INFO(dev)->num_samples_before_ctm);
> > +             DRM_DEBUG_DRIVER("Degamma query property initialized\n");
> > +     }
> >  }
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2015-10-22  7:19 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-20 12:34 [PATCH v7 00/25] Color Management for DRM framework Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 01/25] drm: Create Color Management DRM properties Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 02/25] drm: Create Color Management query properties Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 03/25] drm: Add color correction blobs in CRTC state Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 04/25] drm: Add set property support for color manager Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 05/25] drm: Add get " Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 06/25] drm: Add drm structures for palette color property Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 07/25] drm: Add structure for CTM " Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 08/25] drm: Add color correction state flag Shashank Sharma
2015-10-20 13:58   ` [Intel-gfx] " kbuild test robot
2015-10-29 15:42     ` FW: " Sharma, Shashank
2015-10-30  9:54       ` Jani Nikula
2015-10-20 12:34 ` [PATCH v7 09/25] drm/i915: Add set property interface for CRTC Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 10/25] drm/i915: Create color management files Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 11/25] drm/i915: Register color correction capabilities Shashank Sharma
2015-10-21 23:19   ` Bish, Jim
2015-10-22  7:19     ` Daniel Vetter [this message]
2015-10-22 12:05     ` Rob Bradford
2015-10-26  3:59       ` Sharma, Shashank
2015-10-20 12:34 ` [PATCH v7 12/25] drm/i915: CHV: Load gamma color correction values Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 13/25] drm/i915: CHV: Load degamma " Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 14/25] drm/i915: CHV: Pipe level Gamma correction Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 15/25] drm/i915: CHV: Pipe level degamma correction Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 16/25] drm/i915: CHV: Pipe level CSC correction Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 17/25] drm/i915: Commit color correction to CRTC Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 18/25] drm/i915: Attach color properties " Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 19/25] drm/i915: BDW: Load gamma correction values Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 20/25] drm/i915: BDW: Pipe level Gamma correction Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 21/25] drm/i915: BDW: Load degamma correction values Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 22/25] drm/i915: BDW: Pipe level degamma correction Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 23/25] drm/i915: BDW: Pipe level CSC correction Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 24/25] drm/i915: disable plane gamma Shashank Sharma
2015-10-20 12:34 ` [PATCH v7 25/25] drm/i915: Commit color correction only when needed Shashank Sharma

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20151022071905.GL16848@phenom.ffwll.local \
    --to=daniel@ffwll.ch \
    --cc=annie.j.matheson@intel.com \
    --cc=daniel.vetter@intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=emil.l.velikov@gmail.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jim.bish@intel.com \
    --cc=kausalmalladi@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.