From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752041AbdAYOGt (ORCPT ); Wed, 25 Jan 2017 09:06:49 -0500 Received: from mga05.intel.com ([192.55.52.43]:19265 "EHLO mga05.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751685AbdAYOGr (ORCPT ); Wed, 25 Jan 2017 09:06:47 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,284,1477983600"; d="scan'208";a="35293396" Date: Wed, 25 Jan 2017 16:06:41 +0200 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= To: Andrzej Hajda Cc: Inki Dae , dri-devel@lists.freedesktop.org, Krzysztof Kozlowski , linux-samsung-soc@vger.kernel.org, Bartlomiej Zolnierkiewicz , linux-kernel@vger.kernel.org, Kyungmin Park , Marek Szyprowski , Daniel Vetter Subject: Re: [PATCH 6/7] drm/exynos/decon5433: signal vblank only on odd fields Message-ID: <20170125140641.GU31595@intel.com> References: <1484895145-511-1-git-send-email-a.hajda@samsung.com> <1484895145-511-7-git-send-email-a.hajda@samsung.com> <20170120135540.GC31595@intel.com> <953193f0-484e-0457-baf4-e42b44a3f147@samsung.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <953193f0-484e-0457-baf4-e42b44a3f147@samsung.com> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jan 23, 2017 at 10:15:16AM +0100, Andrzej Hajda wrote: > On 20.01.2017 14:55, Ville Syrjälä wrote: > > On Fri, Jan 20, 2017 at 07:52:24AM +0100, Andrzej Hajda wrote: > >> In case of interlace mode irq is generated for odd and even fields, but > >> vblank should be signaled only for the last emitted field. > > I'm pretty sure most drivers signal it for both fields. At least i915 > > does. > > The question is which behavior is correct? I have not found any clear > statement in the documentation, or drm core code. That's very typical for us unfortunately. I would say what we should do what i915 does. It allows more flexibility in how you use the hardware. Eg. then you can actually scan out interlaced material to an interlaced display and not mess up the fields, and you can also do 3:2 pulldown type of stuff. Or you can even just stuff progressive frames down the pipe at field rate. One problem with interlaced stuff is that we don't have any field indication in the events, nor do we have a way to flip on a specific field. I tried to specify the latter for the SETPLANE ioctl way back when, but it didn't end up being implemented and now we would need something different for atomic. > I have guessed that since vblank event is used to signal end of scan-out > of buffer it should be called after scan-out of whole buffer - in case > of interlaced mode after scan-out of 2nd field. Each field has a proper vertical blanking interval, so you'd just end up totally wasting one of them. > Maybe my assumption is wrong, in such case this patch should be dropped > and mixer driver also should be fixed, but before doing that it would be > good to know for sure how it should be handled correctly. > > Regards > Andrzej -- Ville Syrjälä Intel OTC