Message ID | 1519208444-16665-15-git-send-email-vidya.srinivas@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Reviewed-by: Shashank Sharma <shashank.sharma@intel.com> Regards Shashank On 2/21/2018 3:50 PM, Vidya Srinivas wrote: > From: Chandra Konduru <chandra.konduru@intel.com> > > This patch adds NV12 to list of supported formats for sprite plane. > > v2: Rebased (me) > > v3: Review comments by Ville addressed > - Removed skl_plane_formats_with_nv12 and added > NV12 case in existing skl_plane_formats > - Added the 10bpc RGB formats > > v4: Addressed review comments from Clinton A Taylor > "Why are we adding 10 bit RGB formats with the NV12 series patches? > Trying to set XR30 or AB30 results in error returned even though > the modes are advertised for the planes" > - Removed 10bit RGB formats added previously with NV12 series > > v5: Missed the Tested-by/Reviewed-by in the previous series > Adding the same to commit message in this version. > Addressed review comments from Clinton A Taylor > "Why are we adding 10 bit RGB formats with the NV12 series patches? > Trying to set XR30 or AB30 results in error returned even though > the modes are advertised for the planes" > - Previous version has 10bit RGB format removed from VLV formats > by mistake. Fixing that in this version. > Removed 10bit RGB formats added previously with NV12 series > for SKL. > > v6: Addressed review comments by Ville > Restricting the NV12 to BXT and PIPE A and B > > v7: Rebased (me) > > v8: Rebased (me) > Restricting NV12 changes to BXT and KBL > Restricting NV12 changes for plane 0 (overlay) > > v9: Rebased (me) > > v10: Addressed review comments from Maarten. > Adding NV12 to skl_plane_formats itself. > > v11: Addressed review comments from Shashank Sharma > > v12: Addressed review comments from Shashank Sharma > Made the condition in intel_sprite_plane_create > simple and easy to read as suggested. > > Tested-by: Clinton Taylor <clinton.a.taylor@intel.com> > Reviewed-by: Clinton Taylor <clinton.a.taylor@intel.com> > Signed-off-by: Chandra Konduru <chandra.konduru@intel.com> > Signed-off-by: Nabendu Maiti <nabendu.bikash.maiti@intel.com> > Signed-off-by: Vidya Srinivas <vidya.srinivas@intel.com> > --- > drivers/gpu/drm/i915/intel_sprite.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c > index 77a5433..20e23e5 100644 > --- a/drivers/gpu/drm/i915/intel_sprite.c > +++ b/drivers/gpu/drm/i915/intel_sprite.c > @@ -1171,6 +1171,7 @@ static uint32_t skl_plane_formats[] = { > DRM_FORMAT_YVYU, > DRM_FORMAT_UYVY, > DRM_FORMAT_VYUY, > + DRM_FORMAT_NV12, > }; > > static const uint64_t skl_plane_format_modifiers_noccs[] = { > @@ -1369,6 +1370,14 @@ intel_sprite_plane_create(struct drm_i915_private *dev_priv, > plane_formats = skl_plane_formats; > num_plane_formats = ARRAY_SIZE(skl_plane_formats); > > + if (IS_GEMINILAKE(dev_priv) || INTEL_GEN(dev_priv) == 10) { > + if (plane != 0) > + num_plane_formats -= 1; > + } else { > + if (plane != 0 || pipe != PIPE_C) > + num_plane_formats -= 1; > + } > + > if (skl_plane_has_ccs(dev_priv, pipe, PLANE_SPRITE0 + plane)) > modifiers = skl_plane_format_modifiers_ccs; > else
diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c index 77a5433..20e23e5 100644 --- a/drivers/gpu/drm/i915/intel_sprite.c +++ b/drivers/gpu/drm/i915/intel_sprite.c @@ -1171,6 +1171,7 @@ static uint32_t skl_plane_formats[] = { DRM_FORMAT_YVYU, DRM_FORMAT_UYVY, DRM_FORMAT_VYUY, + DRM_FORMAT_NV12, }; static const uint64_t skl_plane_format_modifiers_noccs[] = { @@ -1369,6 +1370,14 @@ intel_sprite_plane_create(struct drm_i915_private *dev_priv, plane_formats = skl_plane_formats; num_plane_formats = ARRAY_SIZE(skl_plane_formats); + if (IS_GEMINILAKE(dev_priv) || INTEL_GEN(dev_priv) == 10) { + if (plane != 0) + num_plane_formats -= 1; + } else { + if (plane != 0 || pipe != PIPE_C) + num_plane_formats -= 1; + } + if (skl_plane_has_ccs(dev_priv, pipe, PLANE_SPRITE0 + plane)) modifiers = skl_plane_format_modifiers_ccs; else