]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - android-sdk/kernel-video.git/commitdiff
OMAPDSS:DSSCOMP: Ignore display resolution for WB source overlay
authorArtem Rudenko <artemrudenko@ti.com>
Tue, 2 Apr 2013 14:47:41 +0000 (09:47 -0500)
committerPraneeth Bajjuri <praneeth@ti.com>
Fri, 12 Jul 2013 22:41:43 +0000 (17:41 -0500)
When WB capture from an overlay in MEM2MEM mode, the captured
image may be up-scaled beyond the size of the display.

Change-Id: If292f13c2e68ca6912a4ebdc5ea84146690ac93c
Signed-off-by: Arthur Philpott <arthur.philpott@ti.com>
drivers/video/omap2/dsscomp/base.c
include/video/omapdss.h

index 4537bebe049b8db5e51808497797b51cc328966a..6ef1a061c3bd1839aa36c640ee3f85f77cca9ebc 100755 (executable)
@@ -206,6 +206,7 @@ int set_dss_ovl_info(struct dss2_ovl_info *oi)
 
        info.global_alpha = cfg->global_alpha;
        info.pre_mult_alpha = cfg->pre_mult_alpha;
+       info.wb_source = cfg->wb_source;
        info.rotation = cfg->rotation;
        info.mirror = cfg->mirror;
        info.color_mode = cfg->color_mode;
@@ -217,9 +218,10 @@ int set_dss_ovl_info(struct dss2_ovl_info *oi)
        vis.w = ovl->manager->output->device->panel.timings.x_res;
        vis.h = ovl->manager->output->device->panel.timings.y_res;
 
-       if (crop_to_rect(&crop, &win, &vis, cfg->rotation, cfg->mirror) ||
-                                                               vis.w < 2)
-               goto done;
+       if (!info.wb_source)
+               if (crop_to_rect(&crop, &win, &vis, cfg->rotation,
+                                               cfg->mirror) || vis.w < 2)
+                       goto done;
 
        /* adjust crop to UV pixel boundaries */
        for (c = 0; c < (cfg->color_mode == OMAP_DSS_COLOR_NV12 ? 2 :
index d07e22185aa2eec5eb0a82b08cd935e283fe4c69..3370bbe01aca6d0415e791094b5a3dc9d9db11bd 100755 (executable)
@@ -561,6 +561,7 @@ struct omap_overlay_info {
        u16 out_height; /* if 0, out_height == height */
        u8 global_alpha;
        u8 pre_mult_alpha;
+       u8 wb_source;
        u8 zorder;
        u16 min_x_decim, max_x_decim, min_y_decim, max_y_decim;