From: Matt Roper <matthew.d.roper@intel.com>
To: Rahul Sharma <r.sh.open@gmail.com>
Cc: Daniel Vetter <daniel@ffwll.ch>,
linux-samsung-soc <linux-samsung-soc@vger.kernel.org>,
sunil joshi <joshi@samsung.com>,
"dri-devel@lists.freedesktop.org"
<dri-devel@lists.freedesktop.org>,
marcheu@chromium.org, Prashanth G <prashanth.g@samsung.com>,
ajaykumar.rs@samsung.com, Rahul Sharma <rahul.sharma@samsung.com>
Subject: Re: [RFC 3/4] drm: add generic blob properties for image enhancement
Date: Fri, 7 Mar 2014 16:46:33 -0800 [thread overview]
Message-ID: <20140308004633.GD3546@intel.com> (raw)
In-Reply-To: <CAPdUM4NGC_KHxt4GmRxvT9z_AM5G9_AhrnXXrSAWb3yjfv5W5Q@mail.gmail.com>
On Fri, Mar 07, 2014 at 03:50:54PM +0530, Rahul Sharma wrote:
> Hi Daniel,
>
> On 7 March 2014 14:06, Daniel Vetter <daniel@ffwll.ch> wrote:
> > On Thu, Mar 06, 2014 at 11:42:13AM +0530, Rahul Sharma wrote:
> >> Add generic KMS blob properties to core drm framework. These
> >> are writable blob properties which can be used to set Image
> >> Enhancement parameters. The properties which are added here
> >> are meant for color reproduction, color saturation and edge
> >> enhancement.
> >>
> >> Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
...
> > Tbh I don't really understand why we can't use normal properties for this.
> > We might want to add a new RBG type of property (or YUV fwiw, both with
> > and without alpha) to make this standardized (maybe with some fixed point
> > value for non-normalizes).
>
> I dropped Normal properties (the ones which accepts 64 bit data)
> because there will be too many of them. As you can see the
> count is going upto 24 parameters, means 24 such properties, as
> each can carry one parameter. This is too much of overhead.
> Please correct me if you mean something different.
>
> I am not sure what are RGB type properties? I know only about 64-bit
> normal properties which are too compact to carry above structures. Are
> you talking about set_gamma type of ioctls. Each "set_gamma" type
> ioctl needs a addition in callbacks till down the layer which looks bit
> unnecessary, while writable blob properties are using same set_property
> and get_property infrastructure.
>
> >
> > If the only reason you group them is to atomically commit them, then the
> > only thing we need is the atomic ioctl, which can shovel entire groups of
> > properties over the wire at once.
>
> Atomic commit is not an explicit requirement. But splitting them to
> many small pieces (in case of normal properties) are resulting into
> many user-kernel switching overhead, which seems avoidable.
The idea with atomic modeset / nuclear pageflip is that you collect a
whole bunch of individual property updates into a "property set"
container in userspace (libdrm). When you're done setting all the
values you want and "commit" the property set, all of the values that
you collected get passed to the kernel in one go via a new ioctl (and
are then updated in an atomic manner by the DRM driver). So performing
your 24 different property updates via the upcoming atomic API's
shouldn't be a problem and shouldn't add any unnecessary overhead.
The kernel-side of atomic modeset / nuclear pageflip is still a WIP, so
it isn't upstream yet, but you can see the userspace-facing API in Rob
Clark's repo here:
https://github.com/robclark/libdrm/blob/atomic/xf86drmMode.h
Note the drmModePropertySet{Alloc,Add,Commit,Free}() functions near the
bottom.
Matt
--
Matt Roper
Graphics Software Engineer
ISG Platform Enabling & Development
Intel Corporation
(916) 356-2795
next prev parent reply other threads:[~2014-03-08 0:46 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-06 6:12 [RFC 0/4] drm: add generic KMS blob properties for image enhancement Rahul Sharma
2014-03-06 6:12 ` [RFC 1/4] drm: allow to create blank writable blob properties Rahul Sharma
2014-03-06 6:12 ` [RFC 2/4] drm: add ioctl to write into binary blob KMS properties Rahul Sharma
2014-03-06 6:12 ` [RFC 3/4] drm: add generic blob properties for image enhancement Rahul Sharma
2014-03-07 8:36 ` Daniel Vetter
2014-03-07 10:20 ` Rahul Sharma
2014-03-08 0:46 ` Matt Roper [this message]
2014-03-10 4:20 ` Rahul Sharma
2014-03-10 5:16 ` Daniel Vetter
2014-03-06 6:12 ` [RFC 4/4] drm: export create and destroy function for blob properties Rahul Sharma
-- strict thread matches above, loose matches on Subject: below --
2014-03-06 8:02 [RFC 0/4] drm: add generic KMS blob properties for image enhancement Rahul Sharma
2014-03-06 8:02 ` [RFC 3/4] drm: add generic " Rahul 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=20140308004633.GD3546@intel.com \
--to=matthew.d.roper@intel.com \
--cc=ajaykumar.rs@samsung.com \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=joshi@samsung.com \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=marcheu@chromium.org \
--cc=prashanth.g@samsung.com \
--cc=r.sh.open@gmail.com \
--cc=rahul.sharma@samsung.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.