diff mbox

[8/8] drm/i915: Add NV12 support to intel_framebuffer_init

Message ID 1499782256-25664-9-git-send-email-vidya.srinivas@intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

Vidya Srinivas July 11, 2017, 2:10 p.m. UTC
From: Chandra Konduru <chandra.konduru@intel.com>

This patch adds NV12 as supported format
to intel_framebuffer_init and performs various checks.

v2:
-Fix an issue in checks added (Chandra Konduru)

v3: rebased (me)

v4: Review comments by Ville addressed
	Added platform check for NV12 in intel_framebuffer_init
	Removed offset checks for NV12 case

v5: Addressed review comments by Clinton A Taylor
	This NV12 support only correctly works on SKL.
	Plane color space conversion is different on GLK and later platforms
	causing the colors to display incorrectly.
	Ville's plane color space property patch series
	in review will fix this issue.
	- Restricted the NV12 case in intel_framebuffer_init to
	SKL and BXT only.

v6: Rebased (me)

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_display.c | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Ville Syrjälä July 11, 2017, 4:13 p.m. UTC | #1
On Tue, Jul 11, 2017 at 07:40:56PM +0530, Vidya Srinivas wrote:
> From: Chandra Konduru <chandra.konduru@intel.com>
> 
> This patch adds NV12 as supported format
> to intel_framebuffer_init and performs various checks.
> 
> v2:
> -Fix an issue in checks added (Chandra Konduru)
> 
> v3: rebased (me)
> 
> v4: Review comments by Ville addressed
> 	Added platform check for NV12 in intel_framebuffer_init
> 	Removed offset checks for NV12 case
> 
> v5: Addressed review comments by Clinton A Taylor
> 	This NV12 support only correctly works on SKL.
> 	Plane color space conversion is different on GLK and later platforms
> 	causing the colors to display incorrectly.
> 	Ville's plane color space property patch series
> 	in review will fix this issue.
> 	- Restricted the NV12 case in intel_framebuffer_init to
> 	SKL and BXT only.
> 
> v6: Rebased (me)
> 
> 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_display.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index d86dd64..dfda54e 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -14780,6 +14780,11 @@ static int intel_framebuffer_init(struct intel_framebuffer *intel_fb,
>  			goto err;
>  		}
>  		break;
> +	case DRM_FORMAT_NV12:
> +		if (INTEL_GEN(dev_priv) >= 9)
> +			if (IS_SKYLAKE(dev_priv) || IS_BROXTON(dev_priv))
> +				break;

That doesn't really make sense. Are you trying to reject NV12 on SKL/BXT
or accept it? The gen>=9 check is redundant.

> +		goto err;
>  	default:
>  		DRM_DEBUG_KMS("unsupported pixel format: %s\n",
>  			      drm_get_format_name(mode_cmd->pixel_format, &format_name));
> -- 
> 1.9.1
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff mbox

Patch

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index d86dd64..dfda54e 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -14780,6 +14780,11 @@  static int intel_framebuffer_init(struct intel_framebuffer *intel_fb,
 			goto err;
 		}
 		break;
+	case DRM_FORMAT_NV12:
+		if (INTEL_GEN(dev_priv) >= 9)
+			if (IS_SKYLAKE(dev_priv) || IS_BROXTON(dev_priv))
+				break;
+		goto err;
 	default:
 		DRM_DEBUG_KMS("unsupported pixel format: %s\n",
 			      drm_get_format_name(mode_cmd->pixel_format, &format_name));