Re: [PATCH v5 0/6] Enable NV12 support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hey,

Op 02-05-18 om 04:43 schreef Srinivas, Vidya:
>
>> -----Original Message-----
>> From: Kristian Høgsberg [mailto:hoegsberg@xxxxxxxxx]
>> Sent: Monday, April 30, 2018 11:58 PM
>> To: Srinivas, Vidya <vidya.srinivas@xxxxxxxxx>
>> Cc: intel-gfx@xxxxxxxxxxxxxxxxxxxxx
>> Subject: Re:  [PATCH v5 0/6] Enable NV12 support
>>
>> On Thu, Apr 19, 2018 at 3:34 AM Vidya Srinivas <vidya.srinivas@xxxxxxxxx>
>> wrote:
>>
>>> Enabling NV12 support:
>>> - Framebuffer creation
>>> - Primary and Sprite plane support
>>> Patch series depend on Enable display workaround 827 patch mentioned
>>> below submitted by Maarten
>> How are we looking on being able to land these last NV12 patches?
> I think Maarten is working on this series related https://patchwork.freedesktop.org/series/42476/
> I guess all would go in together?

I did some testing and with just the nv12 series and my series I don't hit underruns.
I made the following changes to your series on top of mine:

skl_update_scaler check removed, was done in patch 6 instead.
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index ad13c797e946..0a651f26f827 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -4861,8 +4861,7 @@ skl_update_scaler(struct intel_crtc_state *crtc_state, bool force_detach,
 	}
 
 	if (plane_scaler_check && pixel_format == DRM_FORMAT_NV12 &&
-	    (src_h < SKL_MIN_YUV_420_SRC_H || (src_w % 4) != 0 ||
-	     (src_h % 4) != 0)) {
+	    (src_h < SKL_MIN_YUV_420_SRC_H || src_w < SKL_MIN_YUV_420_SRC_W)) {
 		DRM_DEBUG_KMS("NV12: src dimensions not met\n");
 		return -EINVAL;
 	}

And fixup sprite format.
diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
index dcba946af2ff..573ef6932633 100644
--- a/drivers/gpu/drm/i915/intel_sprite.c
+++ b/drivers/gpu/drm/i915/intel_sprite.c
@@ -1011,6 +1011,7 @@ intel_check_sprite_plane(struct intel_plane *plane,
 		src->y2 = (src_y + src_h) << 16;
 
 		if (intel_format_is_yuv(fb->format->format) &&
+		    fb->format->format != DRM_FORMAT_NV12 &&
 		    (src_x % 2 || src_w % 2)) {
 			DRM_DEBUG_KMS("src x/w (%u, %u) must be a multiple of 2 for YUV planes\n",
 				      src_x, src_w);

_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux