From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: StanLis <stanislav.lisovskiy@intel.com>
Cc: intel-gfx@lists.freedesktop.org, juha-pekka.heikkila@intel.com
Subject: Re: [PATCH v4] drm/i915: Adding YUV444 packed format(DRM_FORMAT_AYUV) support.
Date: Thu, 5 Jul 2018 15:12:07 +0300 [thread overview]
Message-ID: <20180705121207.GX5565@intel.com> (raw)
In-Reply-To: <20180704094152.2445-1-stanislav.lisovskiy@intel.com>
On Wed, Jul 04, 2018 at 12:41:52PM +0300, StanLis wrote:
> From: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
>
> PLANE_CTL_FORMAT_AYUV is already supported, according to hardware
> specification.
>
> v2: Edited commit message, removed redundant whitespaces.
>
> v3: Fixed fallthrough logic for the format switch cases.
>
> v4: Yet again fixed fallthrough logic, to reuse code from other case
> labels.
>
> Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
> ---
> drivers/gpu/drm/i915/intel_display.c | 7 +++++++
> drivers/gpu/drm/i915/intel_sprite.c | 1 +
> 2 files changed, 8 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 56818a45181c..b121b3378aa2 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -86,6 +86,7 @@ static const uint32_t skl_primary_formats[] = {
> DRM_FORMAT_YVYU,
> DRM_FORMAT_UYVY,
> DRM_FORMAT_VYUY,
> + DRM_FORMAT_AYUV,
We'll need an XYUV format because the hw doesn't do alpha with these
IIRC. Also I believe this should be already be available since ~IVB.
> };
>
> static const uint32_t skl_pri_planar_formats[] = {
> @@ -102,6 +103,7 @@ static const uint32_t skl_pri_planar_formats[] = {
> DRM_FORMAT_UYVY,
> DRM_FORMAT_VYUY,
> DRM_FORMAT_NV12,
> + DRM_FORMAT_AYUV,
> };
>
> static const uint64_t skl_format_modifiers_noccs[] = {
> @@ -3497,6 +3499,8 @@ static u32 skl_plane_ctl_format(uint32_t pixel_format)
> return PLANE_CTL_FORMAT_XRGB_2101010;
> case DRM_FORMAT_XBGR2101010:
> return PLANE_CTL_ORDER_RGBX | PLANE_CTL_FORMAT_XRGB_2101010;
> + case DRM_FORMAT_AYUV:
> + return PLANE_CTL_FORMAT_AYUV;
> case DRM_FORMAT_YUYV:
> return PLANE_CTL_FORMAT_YUV422 | PLANE_CTL_YUV422_YUYV;
> case DRM_FORMAT_YVYU:
> @@ -13371,6 +13375,7 @@ static bool skl_plane_format_mod_supported(struct drm_plane *_plane,
> }
>
> switch (format) {
> +
> case DRM_FORMAT_XRGB8888:
> case DRM_FORMAT_XBGR8888:
> case DRM_FORMAT_ARGB8888:
> @@ -13390,6 +13395,7 @@ static bool skl_plane_format_mod_supported(struct drm_plane *_plane,
> if (modifier == I915_FORMAT_MOD_Yf_TILED)
> return true;
> /* fall through */
> + case DRM_FORMAT_AYUV:
> case DRM_FORMAT_C8:
I think Yf should be perfecly fine with this format.
> if (modifier == DRM_FORMAT_MOD_LINEAR ||
> modifier == I915_FORMAT_MOD_X_TILED ||
> @@ -14510,6 +14516,7 @@ static int intel_framebuffer_init(struct intel_framebuffer *intel_fb,
> goto err;
> }
> break;
> + case DRM_FORMAT_AYUV:
> case DRM_FORMAT_YUYV:
> case DRM_FORMAT_UYVY:
> case DRM_FORMAT_YVYU:
> diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
> index 344c0e709b19..ee9f7242aa2b 100644
> --- a/drivers/gpu/drm/i915/intel_sprite.c
> +++ b/drivers/gpu/drm/i915/intel_sprite.c
> @@ -1424,6 +1424,7 @@ static bool skl_plane_format_mod_supported(struct drm_plane *_plane,
> if (modifier == I915_FORMAT_MOD_Yf_TILED)
> return true;
> /* fall through */
> + case DRM_FORMAT_AYUV:
> case DRM_FORMAT_C8:
> if (modifier == DRM_FORMAT_MOD_LINEAR ||
> modifier == I915_FORMAT_MOD_X_TILED ||
Looks like you're missing a lot of stuff from the sprite plane code. But
rather than add all that duplicated junk I recommed that you review
https://patchwork.freedesktop.org/series/39390/ instead as there I
remove all this silly duplication between the two plane types.
> --
> 2.17.0
--
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
prev parent reply other threads:[~2018-07-05 12:12 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-04 9:41 [PATCH v4] drm/i915: Adding YUV444 packed format(DRM_FORMAT_AYUV) support StanLis
2018-07-04 10:11 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Adding YUV444 packed format(DRM_FORMAT_AYUV) support. (rev4) Patchwork
2018-07-04 10:27 ` ✓ Fi.CI.BAT: success " Patchwork
2018-07-04 12:08 ` ✗ Fi.CI.IGT: failure " Patchwork
2018-07-04 13:53 ` [PATCH v4] drm/i915: Adding YUV444 packed format(DRM_FORMAT_AYUV) support Daniel Vetter
2018-07-05 7:32 ` Lisovskiy, Stanislav
2018-07-05 12:12 ` Ville Syrjälä [this message]
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=20180705121207.GX5565@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=juha-pekka.heikkila@intel.com \
--cc=stanislav.lisovskiy@intel.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.