/* Copyright (c) 2012, Code Aurora Forum. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*/
#ifndef MIPI_OTM9605A_BOYI_LG_500_H
#define MIPI_OTM9605A_BOYI_LG_500_H
#include "mipi_dsi.h"
#define VIDEO_WVGA_PT_PARA
#define MIPI_GLOBAL_PARA
#define OTM9605A_BOYI_LG_500_HBP 32
#define OTM9605A_BOYI_LG_500_HFP 32
#define OTM9605A_BOYI_LG_500_HPW 8
#define OTM9605A_BOYI_LG_500_VBP 16
#define OTM9605A_BOYI_LG_500_VFP 15
#define OTM9605A_BOYI_LG_500_VPW 1
/* 0x0C: DSI1_VIDEO_MODE_CTRL
* HFP_PWR_MODE[BIT24] HBP_PWR_MODE[BIT20] HSA_PWR_MODE[BIT16]
* 0: Send blanking packets in high speed mode
* 1: Low power stop mode(LP-11)
* These values should be 1, original value is 0.
*/
#define OTM9605A_BOYI_LG_500_HFPPS 1
#define OTM9605A_BOYI_LG_500_HBPPS 1
#define OTM9605A_BOYI_LG_500_HSAPS 1
/* 0xC0[13:8]: DSI1_CLKOUT_TIMING_CTRL
* Number of BYTECLK cycles(minus one) that the transmitter continues
* sending high speed clocks after the last associated data lane has
* transitioned to low power mode
*/
#define OTM9605A_BOYI_LG_500_TCLK_POST 0x05
/* 0xC0[5:0]: DSI1_CLKOUT_TIMING_CTRL
* Number of BYTECLK cycles(minus one) that the high speed clock shall be
* driven prior to any associated data lane beginning the transition from low
* power to high speed mode.
*/
#define OTM9605A_BOYI_LG_500_TCLK_PRE 0x1A
#define LCD_OTM9605A_BOYI_LG_500_FRAME_RATE 60
#define ORISE9605_BOYI_500_XRES 540
#define ORISE9605_BOYI_500_YRES 960
#ifdef VIDEO_WVGA_PT_PARA
static struct mipi_dsi_phy_ctrl dsi_video_mode_otm9605a_boyi_lg_500_phy_db = {
/* DSI Bit Clock at 500 MHz, 2 lane, RGB888 */
/* 0x0500: regulator */
{0x02, 0x0a, 0x04, 0x00, 0x20},
/* 0x0440: phy timing */
{0x8a, 0x47, 0x14, 0x00, 0x55, 0x56, 0x19, 0x4b, 0x1f, 0x03, 0x04},
/* 0x0470: phy ctrl */
{0x5f, 0x00, 0x00, 0x10},
/* 0x0480: strength */
{0xff, 0x00, 0x06, 0x00},
/* 0x0204: pll control */
{0x00, 0xb4, 0x33, 0xda, 0x00, 0x40, 0x03, 0x62,
0x01, 0x0f, 0x07, 0x00, 0x1a, 0x00, 0x0,
0x02, 0x0, 0x20, 0x0, 0x01, 0x0},
};
#endif
#ifdef MIPI_GLOBAL_PARA
/* -----------------Orise Engineer Mode Enable begin----------------------------
* ADRSFT(0000h): Address Shift Function
* Address shitf function can be enabled when EXTC=1(EXTC bit at $FF00h)
* SFT[7:0] can define the parameter counter number of command 2 register
* CMD2_ENA1(FF00h):Enable Access Command 2 & Software EXTC Enable:
* To enter in Command 2 mode, please let PW[15:8]=96h and PW[7:0]=05h
* To enable write function of Command 2 & enable parameter shift function,
* please let EXTC=1h, as follow:
* CMD2_ENA2(FF80h):Enable Access Orise Command 2
* Only access when CMD2 mode enable
*/
static char boyi_lg_otm9605a_video0[2] = {0x00,0x00};
static char boyi_lg_otm9605a_video1[4] = {0xFF,0x96,0x05,0x01};
static char boyi_lg_otm9605a_video2[2] = {0x00,0x80};
static char boyi_lg_otm9605a_video3[3] = {0xFF,0x96,0x05};
/* -----------------Orise Engineer Mode Enable end----------------- */
/* Hidden parameters: mipi 2 lane */
static char boyi_lg_otm9605a_video4[2] = {0x00,0x92};
static char boyi_lg_otm9605a_video5[3] = {0xFF,0x10,0x02};
/*---------------After setting 2 lane, delay 4 paras BEGIN-------------
static char yashi_otm9605a_video6[2] = {0x00,0x00};
static char yashi_otm9605a_video7[2] = {0x00,0x00};
static char yashi_otm9605a_video8[2] = {0x00,0x00};
static char yashi_otm9605a_video9[2] = {0x00,0x00};
-----------------After setting 2 lane, delay 4 paras END--------------*/
/* -----------------------0xC0 - 0xC5 0xd0 -0xd9 BEGIN -------------------------
* TSP(C080h) TCON Setting Parameter 1: set mclk, VFP, VBP (9 parameters)
* MCLK_SHIFT(C090-C095h) Mclk Shift Set: control the shift numbers for clear signal of mclk
* SD_CTRL(C0A2h) Source Driver Timing Setting
* P_DRV_M(C0B4h) Panel Driving Mode: set the inversion type and mode
* OSC_ADJ(C181h) Oscillator Adjustment for Normal Mode: set the Oscillator freq in normal mode
* OSC_REF_CTRL(C1A0h-C1A8h) Oscillator Reference Control
* SD_PCH_CTRL(C480h) Source Driver Percharge Control
* SD_CTRL_STATE(C484h-C486h) Source Driver Control State
* PWR_CTRL1(C580h):Power Control Setting 1 (4 parameters)
* PWR_CTRL2(C590h):Power Control Setting 2 for normal mode(8 parameters)
* PWR_CTRL3(C5B0h):Power Control Setting 3 for DC Voltage Settings (2 parameters)
* TEMP_SET(C5C0-C5C4h): Temperature Set (5 parameters)
* PWR_CTRL4(C5C5h): Power Control Setting 4 for DC Voltage Settings (1 parameter)
*/
static char boyi_lg_otm9605a_video6[2] = {0x00,0xB4};
static char boyi_lg_otm9605a_video7[2] = {0xC0,0x50}; /* Column Inversion */
static char boyi_lg_otm9605a_video8[2] = {0x00,0x80};
static char boyi_lg_otm9605a_video9[3] = {0xC1,0x36,0x66}; /* frequency orgin: 0x77 */
static char boyi_lg_otm9605a_video10[2] = {0x00,0x89};
static char boyi_lg_otm9605a_video11[2] = {0xC0,0x01}; /* TCON OSC turbo mode */
static char boyi_lg_otm9605a_video12[2] = {0x00,0xA0};
static char boyi_lg_otm9605a_video13[2] = {0xC1,0x02};
static char boyi_lg_otm9605a_video14[3] = {0x00,0x80};
static char boyi_lg_otm9605a_video15[5] = {0xC5,0x08,0x00,0xA0,0x11};
static char boyi_lg_otm9605a_video16[2] = {0x00,0x90};
static char boyi_lg_otm9605a_video17[4] = {0xC5,0x96,0x6D,0x01}; /* orgin: 0xD6,0x57,0x01 [VGH, VGL]=30V */
static char boyi_lg_otm9605a_video18[2] = {0x00,0xB0};
static char boyi_lg_otm9605a_video19[3] = {0xC5,0x05,0x28}; /* adjust vdd1.8v level */
static char boyi_lg_otm9605a_video20[2] = {0x00,0x00};
static char boyi_lg_otm9605a_video21[3] = {0xD8,0x85, 0x85}; /* 0x77,0x77 GVDD NGVDD */
static char boyi_lg_otm9605a_video22[2] = {0x00,0x00};
static char boyi_lg_otm9605a_video23[2] = {0xD9, 0x50}; /* Vcom setting, origin: 0x57 */
static char boyi_lg_otm9605a_video24[2] = {0x00,0xA6};
static char boyi_lg_otm9605a_video25[2] = {0xC1,0x01}; /* Inrush Current Test */
/* -----------------------0xC0 - 0xC5 0xd0 -0xd9 END -------------------------*/
/*---------------CEEN(D680h):CE enable BEGIN--------------------
* D[7:4]: CE_GAIN_SEL CE: Color Enhancement
* 0001: Saturation Enhancement Gain ratio is 1.1
* D.3: CE_ENA
* 1: Color Enhancement(CE) function enable
*/
static char boyi_lg_otm9605a_video126[2] = {0x00,0x80};
static char boyi_lg_otm9605a_video127[2] = {0xD6,0x18};
/*---------------CEEN(D680h):CE enable END--------------------*/
static char boyi_lg_otm9605a_video88[2] = {0x00,0xB1};
static char boyi_lg_otm9605a_video89[2] = {0xC5,0x28};
static char boyi_lg_otm9605a_video90[2] = {0x00,0xB2};
static char boyi_lg_otm9605a_video91[5] = {0xF5,0x15,0x00,0x15,0x00};
static char boyi_lg_otm9605a_video92[2] = {0x00,0xC0};
static char boyi_lg_otm9605a_video93[2] = {0xC5,0x00}; /* thermo disable */
static char boyi_lg_otm9605a_video94[2] = {0x00,0x88};
static char boyi_lg_otm9605a_video95[2] = {0xC4,0x01}; /* CR enable */
static char boyi_lg_otm9605a_video96[2] = {0x00,0xA2};
static char boyi_lg_otm9605a_video97[4] = {0xC0,0x20,0x18,0x09}; /* cr,pl.pcg */
/* source output levels during porch and non-display area SD-PT:11 -- GND */
static char boyi_lg_otm9605a_video98[2] = {0x00,0x80};
static char boyi_lg_otm9605a_video99[2] = {0xC4,0x9C};
/* ---------------------GOA PAD output level BEGIN------------------------
* PANCTRLSET6(CBD0-DBDEh) Panel Control Setting 6: Control GOA PAD output level
* during different stages of the power sequence for PAD
* PANCTRLSET7(CBE0-CBE8h) Panel Control Setting 7: The same as above
*/
static char boyi_lg_otm9605a_video28[2] = {0x00,0x80};
static char boyi_lg_otm9605a_video29[11] = {
0xCB,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
static char boyi_lg_otm9605a_video30[2] = {0x00,0x90};
static char boyi_lg_otm9605a_video31[16] = {
0xCB,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
static char boyi_lg_otm9605a_video32[2] = {0x00,0xA0};
static char boyi_lg_otm9605a_video33[16] = {
0xCB,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
static char boyi_lg_otm9605a_video34[2] = {0x00,0xB0};
static char boyi_lg_otm9605a_video35[11] = {
0xCB,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
static char boyi_lg_otm9605a_video36[2] = {0x00,0xC0};
static char boyi_lg_otm9605a_video37[16] = {
0xCB,0x04,0x04,0x04,0x04,0x08,0x04,0x08,0x04,0x08,0x04,0x08,0x04,0x04,0x04,0x08
};
static char boyi_lg_otm9605a_video38[2] = {0x00,0xD0};
static char boyi_lg_otm9605a_video39[16] = {
0xCB,0x08,0x00,0x00,0x00,0x00,0x04,0x04,0x04,0x04,0x08,0x04,0x08,0x04,0x08,0x04
};
static char boyi_lg_otm9605a_video40[2] = {0x00,0xE0};
static char boyi_lg_otm9605a_video41[11] = {
0xCB,0x08,0x04,0x04,0x04,0x08,0x08,0x00,0x00,0x00,0x00
};
static char boyi_lg_otm9605a_video42[2] = {0x00,0xF0};
static char boyi_lg_otm9605a_video43[11] = {
0xCB,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF
};
/* --------------------GOA PAD output level 0xCB END--------------------*/
/* -----------------------GOA 0xCC - 0xCF BEGIN-------------------------
* PANU2D1(CC80h-CC89h) Panel U2D Setting 1: map internal GOA signals to
* GOA output pad for normal scan(U2D)
* PANU2D2(CC90h-CC9Eh) Panel U2D Setting 2: The same as above
* PANU2D3(CCA0h-CCADh) Panel U2D Setting 3: The same as above
* PAND2U1(CCB0h-CCB9h) Panel D2U Setting 1: map internal GOA signals to
* GOA output pad for reverse scan(D2U)
* PAND2U2(CCC0h-CCCEh) Panel D2U Setting 2: The same as above
* PAND2U3(CCD0h-CCDDh) Panel D2U Setting 3: The same as above
* GOAVEND(CE90h-CE9Bh) GOA VEND Setting: Create single pulse type signals
* GOAGPSET(CE9Ch) GOA Group Setting
* GOACLKA1(CEA0h-CEA6h) GOA CLKA1 Setting
* GOACLKA2(CEA7h-CEADh) GOA CLKA2 Setting
* GOACLKA3(CEB0h-CEB6h) GOA CLKA3 Setting
* GOACLKA4(CEB7h-CEBDh) GOA CLKA4 Setting
* GOACLKB1(CEC0h-CEC6h) GOA CLKB1 Setting
* GOACLKB2(CEC7h-CECDh) GOA CLKB2 Setting
* GOACLKB3(CED0h-CED6h) GOA CLKB3 Setting
* GOACLKB4(CED7h-CEDDh) GOA CLKB4 Setting
* GOAECLK(CFC0h-CFC4h) GOA ECLK Setting
* GOAOPT1(CFC6h) GOA other option 1: adjust additional GOA signal options
* GOATGOPT(CFC7h-CFC9h) GOA Signal Toggle Option Setting
* GOA_F_CTRL(CFD0h) GOA signal Frame behavior setting
*/
static char boyi_lg_otm9605a_video44[2] = {0x00,0x80};
static char boyi_lg_otm9605a_video45[11] = {
0xCC,0x26,0x25,0x21,0x22,0x00,0x0F,0x00,0x0D,0x00,0x0B
};
static char boyi_lg_otm9605a_video46[2] = {0x00,0x90};
static char boyi_lg_otm9605a_video47[16] = {
0xCC,0x00,0x09,0x01,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x26,0x25,0x21,0x22,0x00
};
static char boyi_lg_otm9605a_video48[2] = {0x00,0xA0};
static char boyi_lg_otm9605a_video49[16] = {
0xCC,0x10,0x00,0x0E,0x00,0x0C,0x00,0x0A,0x02,0x04,0x00,0x00,0x00,0x00,0x00,0x00
};
static char boyi_lg_otm9605a_video50[2] = {0x00,0x80};
static char boyi_lg_otm9605a_video51[13] = { /*GOA VST Setting */
0xCE,0x8B,0x03,0x06,0x8A,0x03,0x06,0x89,0x03,0x06,0x88,0x03,0x06
};
static char boyi_lg_otm9605a_video52[2] = {0x00,0x90};
static char boyi_lg_otm9605a_video53[15] = {
0xCE,0xF0,0x00,0x00,0xF0,0x00,0x00,0xF0,0x00,0x00,0xF0,0x00,0x00,0x00,0x00
};
static char boyi_lg_otm9605a_video54[2] = {0x00,0xA0};
static char boyi_lg_otm9605a_video55[15] = {
0xCE,0x38,0x03,0x03,0xC0,0x00,0x06,0x00,0x38,0x02,0x03,0xC1,0x00,0x06,0x00
};
static char boyi_lg_otm9605a_video56[2] = {0x00,0xB0};
static char boyi_lg_otm9605a_video57[15] = {
0xCE,0x38,0x01,0x03,0xC2,0x00,0x06,0x00,0x38,0x00,0x03,0xC3,0x00,0x06,0x00
};
static char boyi_lg_otm9605a_video58[2] = {0x00,0xC0};
static char boyi_lg_otm9605a_video59[15] = {
0xCE,0x38,0x07,0x03,0xBC,0x00,0x06,0x00,0x38,0x06,0x03,0xBD,0x00,0x06,0x00
};
static char boyi_lg_otm9605a_video60[2] = {0x00,0xD0};
static char boyi_lg_otm9605a_video61[15] = {
0xCE,0x38,0x05,0x03,0xBE,0x00,0x06,0x00,0x38,0x04,0x03,0xBF,0x00,0x06,0x00
};
static char boyi_lg_otm9605a_video62[2] = {0x00,0x80};
static char boyi_lg_otm9605a_video63[15] = {
0xCF,0xF0,0x00,0x00,0x10,0x00,0x00,0x00,0xF0,0x00,0x00,0x10,0x00,0x00,0x00
};
static char boyi_lg_otm9605a_video64[2] = {0x00,0x90};
static char boyi_lg_otm9605a_video65[15] = {
0xCF,0xF0,0x00,0x00,0x10,0x00,0x00,0x00,0xF0,0x00,0x00,0x10,0x00,0x00,0x00
};
static char boyi_lg_otm9605a_video66[2] = {0x00,0xA0};
static char boyi_lg_otm9605a_video67[15] = {
0xCF,0xF0,0x00,0x00,0x10,0x00,0x00,0x00,0xF0,0x00,0x00,0x10,0x00,0x00,0x00
};
static char boyi_lg_otm9605a_video68[2] = {0x00,0xB0};
static char boyi_lg_otm9605a_video69[15] = {
0xCF,0xF0,0x00,0x00,0x10,0x00,0x00,0x00,0xF0,0x00,0x00,0x10,0x00,0x00,0x00
};
static char boyi_lg_otm9605a_video70[2] = {0x00,0xC0};
static char boyi_lg_otm9605a_video71[11] = {
0xCF,0x02,0x02,0x20,0x20,0x00,0x00,0x01,0x02,0x00,0x02
};
/* -----------------------GOA 0xCC - 0xCE END----------------------------*/
/* -----------------------Gamma Correction BEGIN -------------------------
* GMCT22P(E100h) Gamma Correction Characteristics Setting(2.2+)
* GMCT22N(E200h) Gamma Correction Characteristics Setting(2.2-)
*/
#if 1 /* GAMMA 2.2(Recommendation of ORISE) */
static char boyi_lg_otm9605a_video72[2] = {0x00,0x00};
static char boyi_lg_otm9605a_video73[17] = {
0xE1, 0x04, 0x0B, 0x10, 0x0D, 0x06, 0x0E, 0x0A,
0x09, 0x05, 0x08, 0x0E, 0x08, 0x0F, 0x14, 0x0F,
0x0A
};
static char boyi_lg_otm9605a_video75[2] = {0x00,0x00};
static char boyi_lg_otm9605a_video76[18] = {
0xE2, 0x04, 0x0B, 0x10, 0x0D, 0x06, 0x0D, 0x0A,
0x09, 0x05, 0x08, 0x0E, 0x08, 0x0F, 0x14, 0x0F,
0x0A
};
#else /* Mass Production gamma of Xi'an based on MTK */
static char boyi_lg_otm9605a_video72[2] = {0x00,0x00};
static char boyi_lg_otm9605a_video73[17] = {
0xE1, 0x00, 0x0B, 0x11, 0x10, 0x07, 0x0E, 0x09,
0x07, 0x05, 0x06, 0x12, 0x08, 0x0f, 0x0d, 0x08,
0x03
};
static char boyi_lg_otm9605a_video75[2] = {0x00,0x00};
static char boyi_lg_otm9605a_video76[18] = {
0xE2, 0x00, 0x0B, 0x11, 0x10, 0x07, 0x0E, 0x09,
0x07, 0x05, 0x06, 0x12, 0x08, 0x0f, 0x0d, 0x03,
0x03
};
#endif
/* -----------------------Gamma Correction END -------------------------*/
/*------------------------CABC enable BEGIN--------------------------
* 0xCA80h~0xCA8Fh: CABC parameters which are the threshold setting
* for CABC gamma curve selection. It totally has 15 parameters.
* CABCSET1(0xC700h): bit4: CABC_SEL_E; bit[3:0]: CABC_SEL[3:0]
* CABCSET2(0xC800h): CABC gamma curve setting, it totally has 18 parameters
* PWM_PARA1(C680h) PWM Parameter 1 (CABLC_EN | BC_SEL, default enable), related to 0x51, 0x53, 0x55, 0x5e
* PWM_PARA2(C6B0h) PWM Parameter 2 (PWM_POL, default disable)
* PWM_PARA3(C6B1h) PWM Parameter 3 (adjust PWM freq 0 - 255)
* PWM_PARA4(C6B3h) PWM Parameter 4 (LEDPWM setting, default LEDON_EN 0x5f)
* PWM_PARA5(C6B4h) PWM Parameter 5 (set PWM Freq Setting, default BC_OEN_OPT enable 0x12)
* AIESET(C900h) Setting for AIE gamma curve (18 parameters)
* WRDISBV(51h) Write Display Brightness
* WRCTRLD(53h) Write CTRL Display (.2(BL), .3(DD), .5(BCTRL))
* 0x53h = 0x2C used to set dynamic backlight for the first time.
* RDCTRLD(54h): read CTRL Display
* WRCABC(55h): Write Content Adaptive Brightness Control
* (0: Power Save off CABC off)
* (1: Power Save Low User Interface)
* (2: Power Save Medium)
* (3: Power Save High)
* RDCABC(56h): Read Content Adaptive Brightness Control
* WRCABCMB(5Eh): Write CABC Minimum Brightness
* RDCABCMB(5Fh)
*/
static char universal_otm9605a_cabc_gamma_sel1[2] = {0x00, 0x80};
static char universal_otm9605a_cabc_gamma_sel2[29] = {
0xCA, 0x80, 0x61, 0x6A, 0x71, 0x7A, 0x81, 0x8A,
0x91, 0x9A, 0xA2, 0xAA, 0xB2, 0xBB, 0xC2, 0xC2,
0xC2, 0xC3, 0xFF, 0xC3, 0xFF, 0xC3, 0xFF, 0x05,
0x03, 0x05, 0x03, 0x05, 0x03
};
static char universal_otm9605a_cabc_sel_1a[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_1b[2] = {0xc7, 0x10};
static char universal_otm9605a_cabc_sel_1c[19] = {
0xC8, 0x80, 0x99, 0x99, 0x99, 0xA9, 0xAA, 0x99,
0x99, 0x99, 0x99, 0x99, 0x99, 0x89, 0x78, 0x67,
0x56, 0x45, 0x33
};
static char universal_otm9605a_cabc_sel_2a[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_2b[2] = {0xc7, 0x11};
static char universal_otm9605a_cabc_sel_2c[19] = {
0xC8, 0x80, 0x99, 0x99, 0x99, 0xA9, 0xAA, 0x99,
0x99, 0x99, 0x99, 0x99, 0x99, 0x89, 0x78, 0x67,
0x56, 0x45, 0x33
};
static char universal_otm9605a_cabc_sel_3a[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_3b[2] = {0xc7, 0x12};
static char universal_otm9605a_cabc_sel_3c[19] = {
0xC8, 0x80, 0x99, 0x99, 0x99, 0x99, 0x9A, 0x99,
0x99, 0x99, 0x99, 0x99, 0x99, 0x88, 0x88, 0x77,
0x66, 0x45, 0x33
};
static char universal_otm9605a_cabc_sel_4a[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_4b[2] = {0xc7, 0x13};
static char universal_otm9605a_cabc_sel_4c[19] = {
0xC8, 0x80, 0x99, 0x99, 0x99, 0x99, 0x89, 0x99,
0x99, 0x99, 0x99, 0x99, 0x99, 0x88, 0x88, 0x78,
0x67, 0x45, 0x33
};
static char universal_otm9605a_cabc_sel_5a[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_5b[2] = {0xc7, 0x14};
static char universal_otm9605a_cabc_sel_5c[19] = {
0xC8, 0x80, 0x99, 0x99, 0x99, 0x99, 0x88, 0x99,
0x99, 0x99, 0x99, 0x99, 0x89, 0x88, 0x88, 0x88,
0x77, 0x45, 0x33
};
static char universal_otm9605a_cabc_sel_6a[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_6b[2] = {0xc7, 0x15};
static char universal_otm9605a_cabc_sel_6c[19] = {
0xC8, 0x80, 0x99, 0x99, 0x99, 0x99, 0x88, 0x98,
0x99, 0x89, 0x99, 0x99, 0x89, 0x88, 0x88, 0x88,
0x78, 0x46, 0x33
};
static char universal_otm9605a_cabc_sel_7a[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_7b[2] = {0xc7, 0x16};
static char universal_otm9605a_cabc_sel_7c[19] = {
0xC8, 0x80, 0x99, 0x99, 0x99, 0x89, 0x88, 0x98,
0x99, 0x89, 0x98, 0x99, 0x89, 0x88, 0x88, 0x88,
0x78, 0x56, 0x34
};
static char universal_otm9605a_cabc_sel_8a[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_8b[2] = {0xc7, 0x17};
static char universal_otm9605a_cabc_sel_8c[19] = {
0xC8, 0x80, 0x99, 0x99, 0x99, 0x89, 0x88, 0x88,
0x98, 0x99, 0x88, 0x99, 0x89, 0x88, 0x88, 0x88,
0x88, 0x57, 0x34
};
static char universal_otm9605a_cabc_sel_9a[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_9b[2] = {0xc7, 0x18};
static char universal_otm9605a_cabc_sel_9c[19] = {
0xC8, 0x80, 0x99, 0x99, 0x99, 0x89, 0x88, 0x88,
0x88, 0x98, 0x99, 0x99, 0x88, 0x88, 0x88, 0x88,
0x77, 0x67, 0x45
};
static char universal_otm9605a_cabc_sel_aa[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_ab[2] = {0xc7, 0x19};
static char universal_otm9605a_cabc_sel_ac[19] = {
0xC8, 0x80, 0x99, 0x99, 0x99, 0x89, 0x88, 0x88,
0x88, 0x88, 0x98, 0x99, 0x88, 0x88, 0x88, 0x88,
0x88, 0x67, 0x45
};
static char universal_otm9605a_cabc_sel_ba[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_bb[2] = {0xc7, 0x1a};
static char universal_otm9605a_cabc_sel_bc[19] = {
0xC8, 0x80, 0x99, 0x99, 0x99, 0x88, 0x88, 0x88,
0x88, 0x88, 0x88, 0x99, 0x88, 0x88, 0x88, 0x88,
0x88, 0x77, 0x55
};
static char universal_otm9605a_cabc_sel_ca[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_cb[2] = {0xc7, 0x1b};
static char universal_otm9605a_cabc_sel_cc[19] = {
0xC8, 0x80, 0x99, 0x99, 0x89, 0x88, 0x88, 0x88,
0x88, 0x88, 0x98, 0x88, 0x88, 0x88, 0x88, 0x88,
0x88, 0x77, 0x57
};
static char universal_otm9605a_cabc_sel_da[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_db[2] = {0xc7, 0x1c};
static char universal_otm9605a_cabc_sel_dc[19] = {
0xC8, 0x80, 0x99, 0x99, 0x88, 0x88, 0x88, 0x88,
0x88, 0x88, 0x98, 0x88, 0x88, 0x88, 0x88, 0x88,
0x88, 0x88, 0x56
};
static char universal_otm9605a_cabc_sel_ea[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_eb[2] = {0xc7, 0x1d};
static char universal_otm9605a_cabc_sel_ec[19] = {
0xC8, 0x80, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88,
0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88,
0x88, 0x88, 0x88
};
static char universal_otm9605a_cabc_sel_end1[2] = {0x00, 0x00};
static char universal_otm9605a_cabc_sel_end2[2] = {0xC7, 0x00};
static char universal_otm9605a_wr_brightness[2] = {0x51, 0x00};
static char universal_otm9605a_wr_ctrl_display[2] = {0x53, 0x24};
static char universal_otm9605a_wr_cabc_mode[2] = {0x55, 0x01};
/* -----------------------CABC enable END -------------------------*/
/*----------------Digital Gamma Correction(R/G/B) Begin--------------
* 0xEC00h: It totally has 33 parameters, which are settings for Digital
* Gamma Correction Characteristics Setting (Red).
* 0xED00h: The same as 0xEC00h, but the color is Green.
* 0xEE00h: The same as 0xEC00h, but the color is Blue.
*/
#if 0 /* White color balance which is no need currently. */
static char orise9605_boyi_450_video138[2] = {0x00, 0x00};
static char orise9605_boyi_450_video139[35] = {
0xEC, 0x40, 0x44, 0x44, 0x43, 0x44, 0x44, 0x43,
0x44, 0x44, 0x43, 0x44, 0x44, 0x43, 0x44, 0x44,
0x43, 0x44, 0x44, 0x43, 0x44, 0x44, 0x43, 0x44,
0x44, 0x43, 0x44, 0x44, 0x43, 0x44, 0x44, 0x43,
0x44, 0x04, 0x00
};
#endif
/*----------------Digital Gamma Correction(R/G/B) End--------------*/
/* -----------------Exit Orise Engineer Mode--------------------*/
static char boyi_lg_otm9605a_video78[5] = {0x00,0x00};
static char boyi_lg_otm9605a_video79[4] = {0xff,0xff,0xff,0xff};
static char boyi_lg_otm9605a_exit_sleep[2] = {
0x11, 0x00,
};
static char boyi_lg_otm9605a_display_on[2] = {
0x29, 0x00,
};
static struct dsi_cmd_desc boyi_lg_otm9605a_video_display_on_cmds[] = {
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video0), boyi_lg_otm9605a_video0},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video1), boyi_lg_otm9605a_video1},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video2), boyi_lg_otm9605a_video2},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video3), boyi_lg_otm9605a_video3},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video4), boyi_lg_otm9605a_video4},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video5), boyi_lg_otm9605a_video5},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video6), boyi_lg_otm9605a_video6},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video7), boyi_lg_otm9605a_video7},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video8), boyi_lg_otm9605a_video8},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video9), boyi_lg_otm9605a_video9},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video10), boyi_lg_otm9605a_video10},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video11), boyi_lg_otm9605a_video11},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video12), boyi_lg_otm9605a_video12},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video13), boyi_lg_otm9605a_video13},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video14), boyi_lg_otm9605a_video14},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video15), boyi_lg_otm9605a_video15},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video16), boyi_lg_otm9605a_video16},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video17), boyi_lg_otm9605a_video17},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video18), boyi_lg_otm9605a_video18},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video19), boyi_lg_otm9605a_video19},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video20), boyi_lg_otm9605a_video20},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video21), boyi_lg_otm9605a_video21},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video22), boyi_lg_otm9605a_video22},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video23), boyi_lg_otm9605a_video23},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video24), boyi_lg_otm9605a_video24},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video25), boyi_lg_otm9605a_video25},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video126), boyi_lg_otm9605a_video126},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video127), boyi_lg_otm9605a_video127},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video88), boyi_lg_otm9605a_video88},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video89), boyi_lg_otm9605a_video89},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video90), boyi_lg_otm9605a_video90},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video91), boyi_lg_otm9605a_video91},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video92), boyi_lg_otm9605a_video92},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video93), boyi_lg_otm9605a_video93},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video94), boyi_lg_otm9605a_video94},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video95), boyi_lg_otm9605a_video95},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video96), boyi_lg_otm9605a_video96},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video97), boyi_lg_otm9605a_video97},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video98), boyi_lg_otm9605a_video98},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video99), boyi_lg_otm9605a_video99},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video28), boyi_lg_otm9605a_video28},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video29), boyi_lg_otm9605a_video29},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video30), boyi_lg_otm9605a_video30},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video31), boyi_lg_otm9605a_video31},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video32), boyi_lg_otm9605a_video32},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video33), boyi_lg_otm9605a_video33},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video34), boyi_lg_otm9605a_video34},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video35), boyi_lg_otm9605a_video35},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video36), boyi_lg_otm9605a_video36},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video37), boyi_lg_otm9605a_video37},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video38), boyi_lg_otm9605a_video38},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video39), boyi_lg_otm9605a_video39},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video40), boyi_lg_otm9605a_video40},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video41), boyi_lg_otm9605a_video41},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video42), boyi_lg_otm9605a_video42},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video43), boyi_lg_otm9605a_video43},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video44), boyi_lg_otm9605a_video44},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video45), boyi_lg_otm9605a_video45},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video46), boyi_lg_otm9605a_video46},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video47), boyi_lg_otm9605a_video47},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video48), boyi_lg_otm9605a_video48},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video49), boyi_lg_otm9605a_video49},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video50), boyi_lg_otm9605a_video50},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video51), boyi_lg_otm9605a_video51},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video52), boyi_lg_otm9605a_video52},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video53), boyi_lg_otm9605a_video53},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video54), boyi_lg_otm9605a_video54},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video55), boyi_lg_otm9605a_video55},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video56), boyi_lg_otm9605a_video56},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video57), boyi_lg_otm9605a_video57},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video58), boyi_lg_otm9605a_video58},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video59), boyi_lg_otm9605a_video59},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video60), boyi_lg_otm9605a_video60},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video61), boyi_lg_otm9605a_video61},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video62), boyi_lg_otm9605a_video62},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video63), boyi_lg_otm9605a_video63},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video64), boyi_lg_otm9605a_video64},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video65), boyi_lg_otm9605a_video65},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video66), boyi_lg_otm9605a_video66},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video67), boyi_lg_otm9605a_video67},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video68), boyi_lg_otm9605a_video68},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video69), boyi_lg_otm9605a_video69},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video70), boyi_lg_otm9605a_video70},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video71), boyi_lg_otm9605a_video71},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video72), boyi_lg_otm9605a_video72},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video73), boyi_lg_otm9605a_video73},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video75), boyi_lg_otm9605a_video75},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video76), boyi_lg_otm9605a_video76},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_gamma_sel1), universal_otm9605a_cabc_gamma_sel1},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_gamma_sel2), universal_otm9605a_cabc_gamma_sel2},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_1a), universal_otm9605a_cabc_sel_1a},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_1b), universal_otm9605a_cabc_sel_1b},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_1c), universal_otm9605a_cabc_sel_1c},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_2a), universal_otm9605a_cabc_sel_2a},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_2b), universal_otm9605a_cabc_sel_2b},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_2c), universal_otm9605a_cabc_sel_2c},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_3a), universal_otm9605a_cabc_sel_3a},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_3b), universal_otm9605a_cabc_sel_3b},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_3c), universal_otm9605a_cabc_sel_3c},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_4a), universal_otm9605a_cabc_sel_4a},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_4b), universal_otm9605a_cabc_sel_4b},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_4c), universal_otm9605a_cabc_sel_4c},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_5a), universal_otm9605a_cabc_sel_5a},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_5b), universal_otm9605a_cabc_sel_5b},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_5c), universal_otm9605a_cabc_sel_5c},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_6a), universal_otm9605a_cabc_sel_6a},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_6b), universal_otm9605a_cabc_sel_6b},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_6c), universal_otm9605a_cabc_sel_6c},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_7a), universal_otm9605a_cabc_sel_7a},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_7b), universal_otm9605a_cabc_sel_7b},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_7c), universal_otm9605a_cabc_sel_7c},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_8a), universal_otm9605a_cabc_sel_8a},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_8b), universal_otm9605a_cabc_sel_8b},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_8c), universal_otm9605a_cabc_sel_8c},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_9a), universal_otm9605a_cabc_sel_9a},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_9b), universal_otm9605a_cabc_sel_9b},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_9c), universal_otm9605a_cabc_sel_9c},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_aa), universal_otm9605a_cabc_sel_aa},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_ab), universal_otm9605a_cabc_sel_ab},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_ac), universal_otm9605a_cabc_sel_ac},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_da), universal_otm9605a_cabc_sel_ba},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_db), universal_otm9605a_cabc_sel_bb},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_dc), universal_otm9605a_cabc_sel_bc},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_ca), universal_otm9605a_cabc_sel_ca},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_cb), universal_otm9605a_cabc_sel_cb},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_cc), universal_otm9605a_cabc_sel_cc},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_da), universal_otm9605a_cabc_sel_da},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_db), universal_otm9605a_cabc_sel_db},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_dc), universal_otm9605a_cabc_sel_dc},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_ea), universal_otm9605a_cabc_sel_ea},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_eb), universal_otm9605a_cabc_sel_eb},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_ec), universal_otm9605a_cabc_sel_ec},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_end1), universal_otm9605a_cabc_sel_end1},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_cabc_sel_end2), universal_otm9605a_cabc_sel_end2},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video78), boyi_lg_otm9605a_video78},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(boyi_lg_otm9605a_video79), boyi_lg_otm9605a_video79},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_wr_brightness), universal_otm9605a_wr_brightness},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_wr_ctrl_display), universal_otm9605a_wr_ctrl_display},
{DTYPE_DCS_LWRITE, 1, 0, 0, 0, sizeof(universal_otm9605a_wr_cabc_mode), universal_otm9605a_wr_cabc_mode},
{DTYPE_DCS_LWRITE, 1, 0, 0, 150, sizeof(boyi_lg_otm9605a_exit_sleep), boyi_lg_otm9605a_exit_sleep},
{DTYPE_DCS_LWRITE, 1, 0, 0, 50, sizeof(boyi_lg_otm9605a_display_on), boyi_lg_otm9605a_display_on},
};
static char boyi_lg_otm9605a_set_sleepin[2] = {0x28, 0x00};
static char boyi_lg_otm9605a_set_disp_off[2] = {0x10, 0x00};
static struct dsi_cmd_desc boyi_lg_otm9605a_video_display_off_cmds[] = {
{DTYPE_DCS_WRITE, 1, 0, 0, 150, sizeof(boyi_lg_otm9605a_set_sleepin), boyi_lg_otm9605a_set_sleepin},
{DTYPE_DCS_WRITE, 1, 0, 0, 150, sizeof(boyi_lg_otm9605a_set_disp_off), boyi_lg_otm9605a_set_disp_off},
};
#endif /* defined MIPI_GLOBAL_PARA */
#endif /* defined MIPI_OTM9605A_BOYI_LG_500_H */