void lcd_enable() { int id = 0; if (dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE, SEQ_DISPLAY_ON[0], 0) < 0) dsim_err("fail to send SEQ_DISPLAY_ON command.\n"); }
int lcd_gamma_update(void) { int ret; ret = dsim_wr_data(MIPI_DSI_DCS_LONG_WRITE, (u32)SEQ_GAMMA_UPDATE, ARRAY_SIZE(SEQ_GAMMA_UPDATE)); if (ret) { dsim_err("fail to update gamma value.\n"); return ret; } return 0; }
/* * Set gamma values * * Parameter * - backlightlevel : It is from 0 to 26. */ int lcd_gamma_ctrl(u32 backlightlevel) { int ret; ret = dsim_wr_data(MIPI_DSI_DCS_LONG_WRITE, (u32)gamma22_table[backlightlevel], GAMMA_PARAM_SIZE); if (ret) { dsim_err("fail to write gamma value.\n"); return ret; } return 0; }
int lcd_gamma_update() { int id = 0; int ret; ret = dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_GAMMA_UPDATE, ARRAY_SIZE(SEQ_GAMMA_UPDATE)); if (ret) { dsim_err("fail to update gamma value.\n"); return ret; } return 0; }
/* * 3HA0 lcd init sequence * * Parameters * - mic_enabled : if mic is enabled, MIC_ENABLE command must be sent * - mode : LCD init sequence depends on command or video mode */ void lcd_init(int id, struct decon_lcd *lcd) { if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_F0, ARRAY_SIZE(SEQ_TEST_KEY_ON_F0)) == -1) dsim_err("fail to write F0 init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE, SEQ_SLEEP_OUT[0], 0) < 0) dsim_err("fail to send SEQ_SLEEP_OUT command.\n"); msleep(120); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_F1, ARRAY_SIZE(SEQ_TEST_KEY_ON_F1)) == -1) dsim_err("fail to write F1 init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_FC, ARRAY_SIZE(SEQ_TEST_KEY_ON_FC)) == -1) dsim_err("fail to write FC init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_F9, ARRAY_SIZE(SEQ_TEST_KEY_ON_F9)) == -1) dsim_err("fail to write F9 init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_F2, ARRAY_SIZE(SEQ_TEST_KEY_ON_F2)) == -1) dsim_err("fail to write F9 init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE, SEQ_TE_ON[0], 0) < 0) dsim_err("fail to send SEQ_TE_ON command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE_PARAM, (unsigned long)SEQ_DISPLAY_D0[0], (unsigned int)SEQ_DISPLAY_D0[1]) == -1) dsim_err("fail to write D0 init command.\n"); }
/* * 3FAH0 lcd init sequence * * Parameters * - mic : if mic is enabled, MIC_ENABLE command must be sent * - mode : LCD init sequence depends on command or video mode */ void lcd_init(struct decon_lcd *lcd) { int id = 0; if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_F0, ARRAY_SIZE(SEQ_TEST_KEY_ON_F0)) < 0) dsim_err("fail to send SEQ_TEST_KEY_ON_F0 command.\n"); msleep(12); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_F1, ARRAY_SIZE(SEQ_TEST_KEY_ON_F1)) < 0) dsim_err("fail to send SEQ_TEST_KEY_ON_F1 command.\n"); msleep(12); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_FC, ARRAY_SIZE(SEQ_TEST_KEY_ON_FC)) < 0) dsim_err("fail to send SEQ_TEST_KEY_ON_FC command.\n"); msleep(12); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_ED, ARRAY_SIZE(SEQ_TEST_KEY_ON_ED)) < 0) dsim_err("fail to send SEQ_TEST_KEY_ON_ED command.\n"); msleep(12); if (lcd->mode == DECON_MIPI_COMMAND_MODE) { if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_FD, ARRAY_SIZE(SEQ_TEST_KEY_ON_FD)) < 0) dsim_err( "fail to send SEQ_TEST_KEY_ON_FD command.\n"); msleep(12); if (dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE_PARAM, SEQ_TEST_KEY_ON_F6[0], SEQ_TEST_KEY_ON_F6[1]) < 0) dsim_err( "fail to send SEQ_TEST_KEY_ON_F6 command.\n"); mdelay(12); } else { if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_E7, ARRAY_SIZE(SEQ_TEST_KEY_ON_E7)) < 0) dsim_err( "fail to send SEQ_TEST_KEY_ON_E7 command.\n"); msleep(120); } if (lcd->mic_enabled) dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE_PARAM, SEQ_MIC_ENABLE[0], SEQ_MIC_ENABLE[1]); if (dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE, SEQ_SLEEP_OUT[0], 0) < 0) dsim_err("fail to send SEQ_SLEEP_OUT command.\n"); mdelay(20); if (lcd->mode == DECON_VIDEO_MODE) { if (dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE, SEQ_DISPLAY_ON[0], 0) < 0) dsim_err("fail to send SEQ_DISPLAY_ON command.\n"); mdelay(120); if (dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE_PARAM, SEQ_TEST_KEY_ON_F2[0], SEQ_TEST_KEY_ON_F2[1]) < 0) dsim_err( "fail to send SEQ_TEST_KEY_ON_F2 command.\n"); mdelay(12); } if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_EB, ARRAY_SIZE(SEQ_TEST_KEY_ON_EB)) < 0) dsim_err("fail to send SEQ_TEST_KEY_ON_EB command.\n"); mdelay(12); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_C0, ARRAY_SIZE(SEQ_TEST_KEY_ON_C0)) < 0) dsim_err("fail to send SEQ_TEST_KEY_ON_C0 command.\n"); mdelay(12); if (lcd->mode == DECON_MIPI_COMMAND_MODE) { if (dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE, SEQ_TE_ON[0], 0) < 0) dsim_err("fail to send SEQ_TE_ON command.\n"); mdelay(12); } }
void lcd_init(int id, struct decon_lcd *lcd) { if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_F0, ARRAY_SIZE(SEQ_TEST_KEY_ON_F0)) < 0) dsim_err("fail to write KEY_ON init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_REG_F2, ARRAY_SIZE(SEQ_REG_F2)) < 0) dsim_err("fail to write F2 init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_REG_F9, ARRAY_SIZE(SEQ_REG_F9)) < 0) dsim_err("fail to write F9 init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE, (unsigned long)SEQ_SLEEP_OUT[0], 0) < 0) dsim_err("fail to write SLEEP_OUT init command.\n"); msleep(10); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_ON_F0, ARRAY_SIZE(SEQ_TEST_KEY_ON_F0)) < 0) dsim_err("fail to write KEY_ON init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_REG_B9, ARRAY_SIZE(SEQ_REG_B9)) < 0) dsim_err("fail to write KEY_ON init command.\n"); msleep(120); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_REG_F2, ARRAY_SIZE(SEQ_REG_F2)) < 0) dsim_err("fail to write F2 init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE, SEQ_TE_ON[0], 0) < 0) dsim_err("fail to write TE_on init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TOUCH_HSYNC, ARRAY_SIZE(SEQ_TOUCH_HSYNC)) < 0) dsim_err("fail to write TOUCH_HSYNC init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_PENTILE_CONTROL, ARRAY_SIZE(SEQ_PENTILE_CONTROL)) < 0) dsim_err("fail to write PENTILE_CONTROL init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_COLUMN_ADDRESS, ARRAY_SIZE(SEQ_COLUMN_ADDRESS)) < 0) dsim_err("fail to write COLUMN_ADDRESS init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_GAMMA_CONDITION_SET, ARRAY_SIZE(SEQ_GAMMA_CONDITION_SET)) < 0) dsim_err("fail to write GAMMA_CONDITION_SET init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_AID_SET, ARRAY_SIZE(SEQ_AID_SET)) < 0) dsim_err("fail to write AID_SET init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_ELVSS_SET, ARRAY_SIZE(SEQ_ELVSS_SET)) < 0) dsim_err("fail to write ELVSS_SET init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_GAMMA_UPDATE, ARRAY_SIZE(SEQ_GAMMA_UPDATE)) < 0) dsim_err("fail to write GAMMA_UPDATE init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_ACL_OFF, ARRAY_SIZE(SEQ_ACL_OFF)) < 0) dsim_err("fail to write ACL_OFF init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_ACL_OPR, ARRAY_SIZE(SEQ_ACL_OPR)) < 0) dsim_err("fail to write ACL_OPR init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_HBM_OFF, ARRAY_SIZE(SEQ_HBM_OFF)) < 0) dsim_err("fail to write HBM_OFF init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TSET_GLOBAL, ARRAY_SIZE(SEQ_TSET_GLOBAL)) < 0) dsim_err("fail to write TSET_GLOBAL init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TSET, ARRAY_SIZE(SEQ_TSET)) < 0) dsim_err("fail to write TSET init command.\n"); if (dsim_wr_data(id, MIPI_DSI_DCS_LONG_WRITE, (unsigned long)SEQ_TEST_KEY_OFF_F0, ARRAY_SIZE(SEQ_TEST_KEY_OFF_F0)) < 0) dsim_err("fail to write KEY_OFF init command.\n"); }
void lcd_enable(int id) { if (dsim_wr_data(id, MIPI_DSI_DCS_SHORT_WRITE, (unsigned long)SEQ_DISPLAY_ON[0], 0) < 0) dsim_err("fail to write DISPLAY_ON command.\n"); }