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;
}
} else {
win->area[i].state = 0;
+ win->area[i].fbdc_en = 0;
if (dev_drv->iommu_enabled) {
g_now_config_addr[win->id][i] = 0;
g_now_config_state[win->id][i] = 0;
} else {
win->z_order = -1;
win->state = 0;
- for (j = 0; j < 4; j++)
+ for (j = 0; j < 4; j++) {
win->area[j].state = 0;
+ win->area[j].fbdc_en = 0;
+ }
if (dev_drv->iommu_enabled) {
for (j = 0; j < 4; j++) {
g_now_config_addr[i][j] = 0;
mutex_init(&dev_drv->output_lock);
INIT_LIST_HEAD(&dev_drv->update_regs_list);
+ INIT_LIST_HEAD(&dev_drv->saved_list);
mutex_init(&dev_drv->update_regs_list_lock);
init_kthread_worker(&dev_drv->update_regs_worker);