Revert "only plug in hdmi use screen scale"
authoryxj <yxj@rock-chips.com>
Sat, 1 Dec 2012 07:12:43 +0000 (15:12 +0800)
committeryxj <yxj@rock-chips.com>
Fri, 7 Dec 2012 09:28:48 +0000 (17:28 +0800)
This reverts commit f99dcc839ea2f34b2c038441d8ae6dab319e5026.

drivers/video/rockchip/hdmi/rk_hdmi_sysfs.c
drivers/video/rockchip/rk_fb.c

index ca0a1cb290cb93b6f85e8f0eb564d6e103de4892..ed0d2e09762cb24c1eacb2975b5e849bf1ecd098 100755 (executable)
@@ -110,9 +110,6 @@ static int hdmi_set_scale(struct rk_display_device *device, int direction, int v
        
        if(!hdmi || value < 0 || value > 100)
                return -1;
-
-       if(!hdmi->hotplug)
-               return 0;
                        
        if(direction == DISPLAY_SCALE_X)
                hdmi->xscale = value;
index ddf628113c0be7461afc6c1f5e81e92b21af6bf6..3014df056770a913fb023d837fab8ab21c858fa5 100644 (file)
@@ -875,14 +875,26 @@ int rk_fb_disp_scale(u8 scale_x, u8 scale_y,u8 lcdc_id)
        screen_x = dev_drv->cur_screen->x_res;
        screen_y = dev_drv->cur_screen->y_res;
        
+#if defined(CONFIG_ONE_LCDC_DUAL_OUTPUT_INF)||defined(CONFIG_NO_DUAL_DISP)
        if(dev_drv->cur_screen->screen_id == 1){
                dev_drv->cur_screen->xpos = (screen_x-screen_x*scale_x/100)>>1;
                dev_drv->cur_screen->ypos = (screen_y-screen_y*scale_y/100)>>1;
                dev_drv->cur_screen->xsize = screen_x*scale_x/100;
                dev_drv->cur_screen->ysize = screen_y*scale_y/100;
-               info->fbops->fb_set_par(info);
+       }else
+#endif
+       {
+               xpos = (screen_x-screen_x*scale_x/100)>>1;
+               ypos = (screen_y-screen_y*scale_y/100)>>1;
+               xsize = screen_x*scale_x/100;
+               ysize = screen_y*scale_y/100;
+               var->nonstd &= 0xff;
+               var->nonstd |= (xpos<<8) + (ypos<<20);
+               var->grayscale &= 0xff;
+               var->grayscale |= (xsize<<8) + (ysize<<20);     
        }
 
+       info->fbops->fb_set_par(info);
        return 0;