printk("LCDC not support rotate!\n");
return -EINVAL;
#endif
- }else{
+ } else{
xpos = (xpos * screen->x_res) / inf->panel1_info.x_res;
ypos = (ypos * screen->y_res) / inf->panel1_info.y_res;
xsize = (xsize * screen->x_res) / inf->panel1_info.x_res;
yuv_phy[1] = last_yuv_phy[1];
yuv_phy[0] += par->y_offset;
yuv_phy[1] += par->c_offset;
+ #if 0
if((var->rotate == 90) ||(var->rotate == 270))
+ #else
+ if(var->rotate%360 != 0)
+ #endif
{
dstoffset = (dstoffset+1)%2;
ipp_req.src0.fmt = 3;
ipp_req.dst0.CbrMst = inf->fb0->fix.mmio_start + screen->x_res*screen->y_res*(2*dstoffset+1);
// if(var->xres > screen->x_res)
// {
- ipp_req.dst0.w = screen->x_res;
- ipp_req.dst0.h = screen->y_res;
+ ipp_req.dst0.w = var->xres;
+ ipp_req.dst0.h = var->yres;
// } else {
// ipp_req.dst0.w = var->yres;
// ipp_req.dst0.h = var->xres;
ipp_req.timeout = 100;
if(var->rotate == 90)
ipp_req.flag = IPP_ROT_90;
+ else if (var->rotate == 180)
+ ipp_req.flag = IPP_ROT_180;
else if(var->rotate == 270)
ipp_req.flag = IPP_ROT_270;
-
//ipp_do_blit(&ipp_req);
ipp_blit_sync(&ipp_req);
fbprintk("yaddr=0x%x,uvaddr=0x%x\n",ipp_req.dst0.YrgbMst,ipp_req.dst0.CbrMst);
yuv_phy[0] += par->y_offset;
yuv_phy[1] += par->c_offset;
- if((var->rotate == 270)||(var->rotate == 90))
+ #if 0
+ if((var->rotate == 90) ||(var->rotate == 270))
+ #else
+ if(var->rotate%360 != 0)
+ #endif
{
#ifdef CONFIG_FB_ROTATE_VIDEO
dstoffset = (dstoffset+1)%2;
ipp_req.dst0.CbrMst = inf->fb0->fix.mmio_start + screen->x_res*screen->y_res*(2*dstoffset+1);
// if(var->xres > screen->x_res)
// {
- ipp_req.dst0.w = screen->x_res;
- ipp_req.dst0.h = screen->y_res;
+ ipp_req.dst0.w = var->xres;
+ ipp_req.dst0.h = var->yres;
// } else {
// ipp_req.dst0.w = var->yres;
// ipp_req.dst0.h = var->xres;
ipp_req.timeout = 100;
if(var->rotate == 90)
ipp_req.flag = IPP_ROT_90;
+ else if(var->rotate == 180)
+ ipp_req.flag = IPP_ROT_180;
else if(var->rotate == 270)
ipp_req.flag = IPP_ROT_270;
//ipp_do_blit(&ipp_req);