int decon_reg_stop(struct decon_psr_info *psr) { int ret = 0; if ((psr->psr_mode == S3C_FB_MIPI_COMMAND_MODE) && (psr->trig_mode == DECON_HW_TRIG)) { decon_reg_set_trigger(psr->trig_mode, DECON_TRIG_DISABLE); } /* timeout : 200ms */ ret = decon_reg_wait_linecnt_is_zero_timeout(2000 * 100); if (ret) goto err; if (psr->psr_mode == S3C_FB_MIPI_COMMAND_MODE) decon_reg_direct_on_off(0); else decon_reg_per_frame_off(); /* timeout : 20ms */ ret = decon_reg_wait_stop_status_timeout(2000 * 10); if (ret) goto err; err: ret = decon_reg_reset(); return ret; }
void decon_reg_start(struct decon_psr_info *psr) { decon_reg_direct_on_off(1); decon_reg_update_standalone(); if ((psr->psr_mode == S3C_FB_MIPI_COMMAND_MODE) && (psr->trig_mode == DECON_HW_TRIG)) decon_reg_set_trigger(psr->trig_mode, DECON_TRIG_ENABLE); }
void decon_reg_configure_lcd(struct decon_lcd *lcd_info) { decon_reg_set_rgb_order(DECON_RGB); decon_reg_set_porch(lcd_info); if (lcd_info->mode == VIDEO_MODE) decon_reg_set_linecnt_op_threshold(lcd_info->yres - 1); decon_reg_set_clkval(0); decon_reg_set_freerun_mode(1); decon_reg_direct_on_off(0); decon_reg_update_standalone(); }
static void decon_activate_window_dma(struct decon_device *decon, unsigned int index) { decon_reg_direct_on_off(decon->id, 1); decon_reg_update_standalone(decon->id); }