case YUV444_A:
pixel_width = 8;
break;
+ case YUYV422:
+ case UYVY422:
+ case YUYV420:
+ case UYVY420:
+ pixel_width = 16;
+ break;
default:
pr_warn("%s: unsupported format: 0x%x\n",
__func__, data_format);
case HAL_PIXEL_FORMAT_FBDC_U8U8U8: /* fbdc rgb888 */
fb_data_fmt = FBDC_RGBX_888;
break;
+ case HAL_PIXEL_FORMAT_YUYV422: /* yuyv422 */
+ fb_data_fmt = YUYV422;
+ break;
+ case HAL_PIXEL_FORMAT_YUYV420: /* yuyv420 */
+ fb_data_fmt = YUYV420;
+ break;
+ case HAL_PIXEL_FORMAT_UYVY422: /* uyvy422 */
+ fb_data_fmt = UYVY422;
+ break;
+ case HAL_PIXEL_FORMAT_UYVY420: /* uyvy420 */
+ fb_data_fmt = UYVY420;
+ break;
default:
pr_warn("%s: unsupported format: 0x%x\n",
__func__, data_format);
case FBDC_RGBX_888:
strcpy(fmt, "FBDC_RGBX_888");
break;
+ case YUYV422:
+ strcpy(fmt, "YUYV422");
+ break;
+ case YUYV420:
+ strcpy(fmt, "YUYV420");
+ break;
+ case UYVY422:
+ strcpy(fmt, "UYVY422");
+ break;
+ case UYVY420:
+ strcpy(fmt, "UYVY420");
+ break;
default:
strcpy(fmt, "invalid");
break;
HAL_PIXEL_FORMAT_BGR_888 = 0x31,
HAL_PIXEL_FORMAT_BGR_565 = 0x32,
+ HAL_PIXEL_FORMAT_YUYV422 = 0x33,
+ HAL_PIXEL_FORMAT_YUYV420 = 0x34,
+ HAL_PIXEL_FORMAT_UYVY422 = 0x35,
+ HAL_PIXEL_FORMAT_UYVY420 = 0x36,
+
HAL_PIXEL_FORMAT_YCrCb_NV12_BT709 =
BT709(HAL_PIXEL_FORMAT_YCrCb_NV12),
HAL_PIXEL_FORMAT_YCrCb_NV12_VIDEO_BT709 =
YUV422_A,
YUV444_A,
YUV420_NV21,
+ YUYV422,
+ YUYV420,
+ UYVY422,
+ UYVY420
};
#define IS_YUV_FMT(fmt) ((fmt >= YUV420) ? 1 : 0)
#define IS_RGB_FMT(fmt) ((fmt < YUV420) ? 1 : 0)
bool state;
enum data_format format;
u8 fmt_cfg;
+ u8 yuyv_fmt;
u8 swap_rb;
u8 swap_uv;
u32 y_offset; /*yuv/rgb offset -->LCDC_WINx_YRGB_MSTx*/