lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Fri, 03 May 2013 17:47:43 +0400
From:	Sergei Shtylyov <sergei.shtylyov@...entembedded.com>
To:	Prabhakar Lad <prabhakar.csengg@...il.com>
CC:	LMML <linux-media@...r.kernel.org>,
	Mauro Carvalho Chehab <mchehab@...hat.com>,
	DLOS <davinci-linux-open-source@...ux.davincidsp.com>,
	LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] media: davinci: vpbe: fix layer availability for NV12
 format

Hello.

On 03-05-2013 13:53, Prabhakar Lad wrote:

> From: Lad, Prabhakar <prabhakar.csengg@...il.com>

> For NV12 format, even if display data is single image,
> both VIDWIN0 and VIDWIN1 parameters must be used. The start
> address of Y data plane and C data plane is configured in
> VIDEOWIN0ADH/L and VIDEOWIN1ADH/L respectively.
> cuurently only one layer was requested, which is suffice
> for yuv422, but for yuv420(NV12) two layers are required and
> fix the same by requesting for other layer if pix fmt is NV12
> during set_fmt.

> Signed-off-by: Lad, Prabhakar <prabhakar.csengg@...il.com>
> ---
>   drivers/media/platform/davinci/vpbe_display.c |   16 ++++++++++++++++
>   1 files changed, 16 insertions(+), 0 deletions(-)

> diff --git a/drivers/media/platform/davinci/vpbe_display.c b/drivers/media/platform/davinci/vpbe_display.c
> index 0341dcc..f2ee07b 100644
> --- a/drivers/media/platform/davinci/vpbe_display.c
> +++ b/drivers/media/platform/davinci/vpbe_display.c
> @@ -922,6 +922,22 @@ static int vpbe_display_s_fmt(struct file *file, void *priv,
>   	other video window */
>
>   	layer->pix_fmt = *pixfmt;
> +	if (pixfmt->pixelformat == V4L2_PIX_FMT_NV12 &&
> +	    cpu_is_davinci_dm365()) {

    cpu_is_*() shouldn't be used in the drivers.

> +		struct vpbe_layer *otherlayer;
> +
> +		otherlayer = _vpbe_display_get_other_win_layer(disp_dev, layer);
> +		/* if other layer is available, only
> +		* claim it, do not configure it
> +		*/
> +		ret = osd_device->ops.request_layer(osd_device,
> +						    otherlayer->layer_info.id);
> +		if (ret < 0) {
> +			v4l2_err(&vpbe_dev->v4l2_dev,
> +				 "Display Manager failed to allocate layer\n");
> +			return -EBUSY;
> +		}
> +	}

WBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ