Re: [PATCH] drm/tegra: Expose color key and plane blending controls to userspace

From: Thierry Reding
Date: Fri Sep 02 2016 - 11:51:30 EST


On Fri, Sep 02, 2016 at 05:32:19PM +0200, Thierry Reding wrote:
> On Fri, Sep 02, 2016 at 12:33:42PM +0300, Dmitry Osipenko wrote:
> > Chromakey is a simple way of video overlay overlap implementation. This
> > patch adds 2 new IOCTL's: first - sets color key and is common across of
> > all Tegra SoC's, second - sets plane blending controls and allows to
> > utilize the color key, this one is exclusive to Tegra20/30.
> >
> > Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx>
> > ---
> > drivers/gpu/drm/tegra/dc.c | 150 +++++++++++++++++++++++++++++++++-------
> > drivers/gpu/drm/tegra/dc.h | 6 ++
> > drivers/gpu/drm/tegra/drm.c | 159 +++++++++++++++++++++++++++++++++++++++++++
> > drivers/gpu/drm/tegra/drm.h | 14 ++++
> > include/uapi/drm/tegra_drm.h | 34 +++++++++
> > 5 files changed, 337 insertions(+), 26 deletions(-)
>
> I think these are really nice features to have, but these would need to
> be exposed as properties, rather than custom driver-specific IOCTLs. It
> seems to me like the colorkey feature could be implemented in much the
> same way as in the Armada, RCar and Nouveau drivers.
>
> As for the blending options, I think they should be exposed in terms of
> the zpos property, to allow generic userspace to make use of them. Also
> can you explain why this needs to be exclusive to Tegra20 and Tegra30?

Ah... I just realized that the blending interface changed on Tegra124.
All the more reason to expose this more generically, that way we can
hide the differences between a property and support the same interface
across all generations of Tegra.

Also see this:

https://chromium.googlesource.com/chromiumos/third_party/kernel/+/de9295aabdb7f80555c9b77b29ac77bcdac3280b

Thierry

Attachment: signature.asc
Description: PGP signature