From mboxrd@z Thu Jan 1 00:00:00 1970 From: Steve Longerbeam Subject: Re: [PATCH v3 05/14] gpu: ipu-v3: Allow negative offsets for interlaced scanning Date: Sat, 4 Aug 2018 12:25:20 -0700 Message-ID: <786e7eb0-a81c-a4e8-3ddc-7edd0bc08cd9@gmail.com> References: <1533150747-30677-1-git-send-email-steve_longerbeam@mentor.com> <1533150747-30677-6-git-send-email-steve_longerbeam@mentor.com> <1533203182.3516.12.camel@pengutronix.de> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1533203182.3516.12.camel@pengutronix.de> Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org To: Philipp Zabel , linux-media@vger.kernel.org Cc: Steve Longerbeam , "open list:DRM DRIVERS FOR FREESCALE IMX" , open list List-Id: dri-devel@lists.freedesktop.org Hi Philipp, On 08/02/2018 02:46 AM, Philipp Zabel wrote: > On Wed, 2018-08-01 at 12:12 -0700, Steve Longerbeam wrote: >> From: Philipp Zabel >> >> The IPU also supports interlaced buffers that start with the bottom field. >> To achieve this, the the base address EBA has to be increased by a stride >> length and the interlace offset ILO has to be set to the negative stride. >> >> Signed-off-by: Philipp Zabel >> Signed-off-by: Steve Longerbeam >> --- >> drivers/gpu/ipu-v3/ipu-cpmem.c | 15 +++++++++++++-- >> 1 file changed, 13 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/gpu/ipu-v3/ipu-cpmem.c b/drivers/gpu/ipu-v3/ipu-cpmem.c >> index e68e473..8cd9e37 100644 >> --- a/drivers/gpu/ipu-v3/ipu-cpmem.c >> +++ b/drivers/gpu/ipu-v3/ipu-cpmem.c >> @@ -269,9 +269,20 @@ EXPORT_SYMBOL_GPL(ipu_cpmem_set_uv_offset); >> >> void ipu_cpmem_interlaced_scan(struct ipuv3_channel *ch, int stride) >> { >> + u32 ilo, sly; >> + >> + if (stride < 0) { >> + stride = -stride; >> + ilo = 0x100000 - (stride / 8); >> + } else { >> + ilo = stride / 8; >> + } >> + >> + sly = (stride * 2) - 1; >> + >> ipu_ch_param_write_field(ch, IPU_FIELD_SO, 1); >> - ipu_ch_param_write_field(ch, IPU_FIELD_ILO, stride / 8); >> - ipu_ch_param_write_field(ch, IPU_FIELD_SLY, (stride * 2) - 1); >> + ipu_ch_param_write_field(ch, IPU_FIELD_ILO, ilo); >> + ipu_ch_param_write_field(ch, IPU_FIELD_SLY, sly); >> }; >> EXPORT_SYMBOL_GPL(ipu_cpmem_interlaced_scan); > This patch is merged in drm-next: 4e3c5d7e05be ("gpu: ipu-v3: Allow > negative offsets for interlaced scanning") I don't see it in drm-next, but I see it in linux-next/master. Thanks. Steve