From 77d96e925a296ad1b9b8e53e802c87ae82c770c3 Mon Sep 17 00:00:00 2001 From: "Lad, Prabhakar" Date: Tue, 7 May 2013 01:07:25 -0300 Subject: [PATCH] --- yaml --- r: 377167 b: refs/heads/master c: bdea0d222a21f864a811cf6666532334e622f7c6 h: refs/heads/master i: 377165: b2dcb124ed3b3709a2108112911b47381871f168 377163: d6ac653fc173608f9e8134ef42ab8f3fad115098 377159: 5cc30b2eb022fde9409e0a3322c3c285f7872e4a 377151: 389932424b3faa4dd28f34cd5021fb341f518742 v: v3 --- [refs] | 2 +- .../drivers/media/platform/davinci/vpbe_display.c | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 5997056e6dd4..c5b919d322ca 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 0391dc17bd5d7d6b1706d0be6472c4b352b57c05 +refs/heads/master: bdea0d222a21f864a811cf6666532334e622f7c6 diff --git a/trunk/drivers/media/platform/davinci/vpbe_display.c b/trunk/drivers/media/platform/davinci/vpbe_display.c index 1802f11e939f..d0b375cf565f 100644 --- a/trunk/drivers/media/platform/davinci/vpbe_display.c +++ b/trunk/drivers/media/platform/davinci/vpbe_display.c @@ -916,6 +916,21 @@ 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) { + 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; + } + } /* Get osd layer config */ osd_device->ops.get_layer_config(osd_device,