lkml.org 
[lkml]   [2013]   [May]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [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@gmail.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@gmail.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



\
 
 \ /
  Last update: 2013-05-03 16:01    [W:0.049 / U:0.660 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site