else if (win0->area[0].format == RGB888)
win0->area[0].xvir =
win0->area[0].y_vir_stride * 4 / 3;
- else if (win0->area[0].format == RGB565)
+ else if ((win0->area[0].format == RGB565) ||
+ (win0->area[0].format == BGR565))
win0->area[0].xvir =
2 * win0->area[0].y_vir_stride;
else
case ARGB888:
case XBGR888:
case ABGR888:
+ case XRGB888:
yrgb_gather_num = 3;
break;
case RGB888:
case RGB565:
+ case BGR888:
+ case BGR565:
yrgb_gather_num = 2;
break;
case YUV444:
win->area[0].fmt_cfg = VOP_FORMAT_RGB565;
win->area[0].swap_rb = 0;
break;
+ case XRGB888:
+ win->area[0].fmt_cfg = VOP_FORMAT_ARGB888;
+ win->area[0].swap_rb = 0;
+ break;
+ case BGR888:
+ win->area[0].fmt_cfg = VOP_FORMAT_RGB888;
+ win->area[0].swap_rb = 1;
+ break;
+ case BGR565:
+ win->area[0].fmt_cfg = VOP_FORMAT_RGB565;
+ win->area[0].swap_rb = 1;
+ break;
case YUV422:
if (win->id == 0) {
win->area[0].fmt_cfg = VOP_FORMAT_YCBCR422;