From: Daniel Vetter <daniel@ffwll.ch>
To: Jesse Barnes <jbarnes@virtuousgeek.org>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 03/20] drm/i915: add constant alpha support to sprite ioctl
Date: Tue, 19 Mar 2013 09:42:56 +0100 [thread overview]
Message-ID: <20130319084255.GW9021@phenom.ffwll.local> (raw)
In-Reply-To: <1362768363-3710-3-git-send-email-jbarnes@virtuousgeek.org>
On Fri, Mar 08, 2013 at 10:45:46AM -0800, Jesse Barnes wrote:
> And implement it on ValleyView.
>
> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
> ---
> drivers/gpu/drm/i915/i915_reg.h | 1 +
> drivers/gpu/drm/i915/intel_sprite.c | 11 ++++++++++-
> include/uapi/drm/i915_drm.h | 1 +
> 3 files changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index 669a61c..6a7e424 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -3287,6 +3287,7 @@
> #define _SPAKEYMAXVAL 0x721a0
> #define _SPATILEOFF 0x721a4
> #define _SPACONSTALPHA 0x721a8
> +#define SP_ALPHA_EN (1<<31)
> #define _SPAGAMC 0x721f4
>
> #define _SPBCNTR 0x72280
> diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
> index 26fee2f..a6a49f6 100644
> --- a/drivers/gpu/drm/i915/intel_sprite.c
> +++ b/drivers/gpu/drm/i915/intel_sprite.c
> @@ -162,7 +162,8 @@ vlv_update_colorkey(struct drm_plane *dplane,
> int plane = intel_plane->plane;
> u32 sprctl;
>
> - if (key->flags & I915_SET_COLORKEY_DESTINATION)
> + if (!(key->flags &
> + (I915_SET_COLORKEY_SOURCE | I915_SET_COLORKEY_ALPHA)))
> return -EINVAL;
>
> I915_WRITE(SPKEYMINVAL(pipe, plane), key->min_value);
> @@ -171,8 +172,16 @@ vlv_update_colorkey(struct drm_plane *dplane,
>
> sprctl = I915_READ(SPCNTR(pipe, plane));
> sprctl &= ~SP_SOURCE_KEY;
> +
> + if (!(key->flags & I915_SET_COLORKEY_ALPHA))
> + I915_WRITE(SPCONSTALPHA(pipe, plane), 0);
> +
> if (key->flags & I915_SET_COLORKEY_SOURCE)
> sprctl |= SP_SOURCE_KEY;
> + else if (key->flags & I915_SET_COLORKEY_ALPHA) {
> + I915_WRITE(SPCONSTALPHA(pipe, plane),
> + SP_ALPHA_EN | key->channel_mask);
> + }
> I915_WRITE(SPCNTR(pipe, plane), sprctl);
>
> POSTING_READ(SPKEYMSK(pipe, plane));
> diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h
> index 07d5941..05e61bc 100644
> --- a/include/uapi/drm/i915_drm.h
> +++ b/include/uapi/drm/i915_drm.h
> @@ -949,6 +949,7 @@ struct drm_intel_overlay_attrs {
> #define I915_SET_COLORKEY_NONE (1<<0) /* disable color key matching */
> #define I915_SET_COLORKEY_DESTINATION (1<<1)
> #define I915_SET_COLORKEY_SOURCE (1<<2)
> +#define I915_SET_COLORKEY_ALPHA (1<<3)
We've added this driver-private ioctl before attributes everywhere was
possible. I think we need to convert that before adding more stuff ...
Also some discussion on dri-devel about a somewhat standardized set of
plane blending properties can't hurt.
Yes, I know that this will lead to a massive dri-devel bikeshed ;-)
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
next prev parent reply other threads:[~2013-03-19 8:40 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-08 18:45 [PATCH 01/20] drm/i915: sprite support for ValleyView v2 Jesse Barnes
2013-03-08 18:45 ` [PATCH 02/20] drm/i915: add sprite assertion function for VLV Jesse Barnes
2013-03-08 18:45 ` [PATCH 03/20] drm/i915: add constant alpha support to sprite ioctl Jesse Barnes
2013-03-19 8:42 ` Daniel Vetter [this message]
2013-03-19 17:57 ` Jesse Barnes
2013-03-20 16:32 ` Ville Syrjälä
2013-03-20 17:16 ` Daniel Vetter
2013-03-08 18:45 ` [PATCH 04/20] drm/i915: update VLV PLL and DPIO code v6 Jesse Barnes
2013-03-08 18:45 ` [PATCH 05/20] drm/i915/dp: fix up VLV DP handling v2 Jesse Barnes
2013-03-08 18:45 ` [PATCH 06/20] drm/i915: panel power sequencing for VLV eDP v2 Jesse Barnes
2013-03-19 20:49 ` Daniel Vetter
2013-03-08 18:45 ` [PATCH 07/20] drm/i915: add more VLV IDs Jesse Barnes
2013-03-08 18:45 ` [PATCH 08/20] drm/i915: fix WaDisablePSDDualDispatchEnable on VLV v2 Jesse Barnes
2013-03-08 18:45 ` [PATCH 09/20] drm/i915: add power context allocation and setup " Jesse Barnes
2013-03-08 20:16 ` Ben Widawsky
2013-03-11 23:40 ` Daniel Vetter
2013-03-12 0:01 ` Chris Wilson
2013-03-08 18:45 ` [PATCH 10/20] drm/i915: allow force wake at init time " Jesse Barnes
2013-03-19 6:38 ` Ville Syrjälä
2013-03-19 8:38 ` Daniel Vetter
2013-03-08 18:45 ` [PATCH 11/20] drm/i915: set conservative clock gating values " Jesse Barnes
2013-03-08 18:45 ` [PATCH 12/20] drm/i915: fix VLV limits and m/n/p calculations v2 Jesse Barnes
2013-03-08 18:45 ` [PATCH 13/20] drm/i915: add Punit read/write routines for VLV Jesse Barnes
2013-03-20 18:38 ` Ben Widawsky
2013-03-08 18:45 ` [PATCH 14/20] drm/i915: add media well to VLV force wake routines v2 Jesse Barnes
2013-03-19 11:53 ` Ville Syrjälä
2013-03-19 19:15 ` Daniel Vetter
2013-03-08 18:45 ` [PATCH 15/20] drm/i915: turbo & RC6 support for VLV v2 Jesse Barnes
2013-03-19 22:27 ` Ben Widawsky
2013-03-19 22:35 ` Jesse Barnes
2013-03-19 23:38 ` Ben Widawsky
2013-03-20 16:32 ` Ben Widawsky
2013-03-08 18:45 ` [PATCH 16/20] drm/i915: DSPFW and BLC regs are in the display offset range Jesse Barnes
2013-03-08 18:46 ` [PATCH 17/20] drm/i915: don't use plane pipe select on VLV Jesse Barnes
2013-03-19 11:59 ` Ville Syrjälä
2013-03-19 19:05 ` Daniel Vetter
2013-03-08 18:46 ` [PATCH 18/20] drm/i915: use VLV DIP routines on VLV v2 Jesse Barnes
2013-03-19 19:23 ` Daniel Vetter
2013-03-08 18:46 ` [PATCH 19/20] drm/i915/dp: program VSwing and Preemphasis control settings on VLV Jesse Barnes
2013-03-19 19:30 ` Daniel Vetter
2013-03-08 18:46 ` [PATCH 20/20] drm/i915: VLV doesn't have HDMI on port C Jesse Barnes
2013-03-19 21:11 ` Daniel Vetter
2013-03-19 6:30 ` [PATCH 01/20] drm/i915: sprite support for ValleyView v2 Ville Syrjälä
2013-03-19 17:51 ` Jesse Barnes
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=20130319084255.GW9021@phenom.ffwll.local \
--to=daniel@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jbarnes@virtuousgeek.org \
/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.