#ifndef __EA8061_PARAM_H__ #define __EA8061_PARAM_H__ #define GAMMA_PARAM_SIZE 26 #define ELVSS_PARAM_SIZE 3 #define ACL_PARAM_SIZE ARRAY_SIZE(acl_cutoff_50) #ifdef CONFIG_AID_DIMMING #define ELVSS_OFFSET_300 0x00 #define ELVSS_OFFSET_290 0x01 #define ELVSS_OFFSET_280 0x02 #define ELVSS_OFFSET_270 0x03 #define ELVSS_OFFSET_260 0x04 #define ELVSS_OFFSET_250 0x05 #define ELVSS_OFFSET_240 0x06 #define ELVSS_OFFSET_230 0x06 #define ELVSS_OFFSET_220 0x07 #define ELVSS_OFFSET_210 0x08 #define ELVSS_OFFSET_200 0x09 #define ELVSS_OFFSET_190 0x0A #define ELVSS_OFFSET_180 0x05 #define ELVSS_OFFSET_170 0x06 #define ELVSS_OFFSET_160 0x07 #define ELVSS_OFFSET_150 0x08 #define ELVSS_OFFSET_140 0x09 #define ELVSS_OFFSET_130 0x0A #define ELVSS_OFFSET_120 0x0B #define ELVSS_OFFSET_110 0x0C #define ELVSS_OFFSET_100 0x0D enum { ELVSS_110 = 0, ELVSS_120, ELVSS_130, ELVSS_140, ELVSS_150, ELVSS_160, ELVSS_170, ELVSS_180, ELVSS_190, ELVSS_200, ELVSS_210, ELVSS_220, ELVSS_230, ELVSS_240, ELVSS_250, ELVSS_260, ELVSS_270, ELVSS_280, ELVSS_290, ELVSS_300, ELVSS_STATUS_MAX, }; #else #define ELVSS_OFFSET_300 0x00 #define ELVSS_OFFSET_200 0x08 #define ELVSS_OFFSET_160 0x0D #if defined(CONFIG_S6E8AA0_AMS529HA01) #define ELVSS_OFFSET_100 0x11 #else #define ELVSS_OFFSET_100 0x12 #endif #if defined(CONFIG_S6E8AA0_AMS529HA01) #define ELVSS_OFFSET_MAX ELVSS_OFFSET_300 #define ELVSS_OFFSET_1 ELVSS_OFFSET_200 #define ELVSS_OFFSET_2 ELVSS_OFFSET_160 #define ELVSS_OFFSET_MIN ELVSS_OFFSET_100 #else #define ELVSS_OFFSET_MAX ELVSS_OFFSET_300 #define ELVSS_OFFSET_1 ELVSS_OFFSET_160 #define ELVSS_OFFSET_2 ELVSS_OFFSET_1 #define ELVSS_OFFSET_MIN ELVSS_OFFSET_100 #endif enum { ELVSS_MIN = 0, ELVSS_1, ELVSS_2, ELVSS_MAX, ELVSS_STATUS_MAX, }; #endif enum { GAMMA_20CD, #ifdef CONFIG_AID_DIMMING GAMMA_30CD, #else GAMMA_30CD = GAMMA_20CD, #endif GAMMA_40CD, GAMMA_50CD, GAMMA_60CD, GAMMA_70CD, GAMMA_80CD, GAMMA_90CD, GAMMA_100CD, GAMMA_110CD, GAMMA_120CD, GAMMA_130CD, GAMMA_140CD, GAMMA_150CD, GAMMA_160CD, GAMMA_170CD, GAMMA_180CD, #ifdef CONFIG_AID_DIMMING GAMMA_182CD, GAMMA_184CD, GAMMA_186CD, GAMMA_188CD, #endif GAMMA_190CD, GAMMA_200CD, GAMMA_210CD, GAMMA_220CD, GAMMA_230CD, GAMMA_240CD, GAMMA_250CD, GAMMA_290CD, GAMMA_300CD = GAMMA_290CD, GAMMA_MAX }; static const unsigned char SEQ_APPLY_LEVEL_2_KEY[] = { 0xF0, 0x5A, 0x5A }; static const unsigned char SEQ_APPLY_LEVEL_2_KEY2[] = { 0xFC, 0x5A, 0x5A }; static const unsigned char SEQ_DYNAMIC_ELVSS[] = { 0xB2, 0x04, 0xB4, 0xA0, 0x00, 0x00, 0x00, }; static const unsigned char SEQ_SLEEP_OUT[] = { 0x11, 0x00, 0x00 }; static const unsigned char SEQ_PANEL_CONDITION_SET[] = { 0xC4, 0x4E, 0xBD, 0x00, 0x00, 0x58, 0xA7, 0x0B, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x92, 0x0B, 0x92, 0x08, 0x08, 0x07, 0x30, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x04, 0x04, 0x04 }; static const unsigned char SEQ_GAMMA_CONDITION_SET[] = { 0xCA, 0x00, 0xE8, 0x00, 0xF7, 0x01, 0x03, 0xDB, 0xDB, 0xDC, 0xD9, 0xD8, 0xDA, 0xCB, 0xC8, 0xCB, 0xD4, 0xD3, 0xD7, 0xE6, 0xE6, 0xEA, 0xE2, 0xE4, 0xE5, 0xCE, 0xC3, 0xCF, 0xB9, 0x9D, 0xDE, 0x11, 0x00 }; static const unsigned char SEQ_LTPS_AID[] = { 0xB3, 0x00, 0x0A, 0x00, 0x0A, }; static const unsigned char SEQ_DISPLAY_CONDITION_SET[] = { 0x36, 0x02, 0x00 }; static const unsigned char SEQ_GAMMA_UPDATE[] = { 0xF7, 0x5A, 0x5A }; static const unsigned char SEQ_GAMMA_UPDATE2[] = { 0xF7, 0xA5, 0xA5 }; static const unsigned char SEQ_ETC_WCABC_CONTROL[] = { 0x55, 0x00, 0x01, 0x02, 0x03 }; static const unsigned char SEQ_ETC_SLEW_CONTROL[] = { 0xB4, 0x33, 0x03, 0x00 }; static const unsigned char SEQ_DISPLAY_ON[] = { 0x29, 0x00, 0x00 }; static const unsigned char SEQ_DISPLAY_OFF[] = { 0x28, 0x00, 0x00 }; static const unsigned char SEQ_STANDBY_ON[] = { 0x01, 0x00, 0x00 }; static const unsigned char SEQ_ACL_ON[] = { 0xC0, 0x01, 0x00 }; static const unsigned char SEQ_ACL_OFF[] = { 0xC0, 0x00, 0x00 }; enum { ACL_STATUS_0P = 0, ACL_STATUS_20P, ACL_STATUS_33P, ACL_STATUS_40P, ACL_STATUS_43P, ACL_STATUS_45P, ACL_STATUS_48P, ACL_STATUS_50P, ACL_STATUS_52P, ACL_STATUS_53P, ACL_STATUS_55P, ACL_STATUS_MAX } ACL_STATUS; const unsigned char acl_cutoff_20[] = { 0xC1, 0x47, 0x53, 0x13, 0x53, 0x00, 0x00, 0x02, 0xCF, 0x00, 0x00, 0x04, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x07, 0x0A, 0x0D, 0x10, 0x12, 0x15, 0x18, 0x1B, 0x1E }; const unsigned char acl_cutoff_33[] = { 0xC1, 0x47, 0x53, 0x13, 0x53, 0x00, 0x00, 0x02, 0xCF, 0x00, 0x00, 0x04, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0x0A, 0x0F, 0x14, 0x19, 0x1D, 0x22, 0x27, 0x2B, 0x30 }; const unsigned char acl_cutoff_40[] = { 0xC1, 0x47, 0x53, 0x13, 0x53, 0x00, 0x00, 0x02, 0xCF, 0x00, 0x00, 0x04, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0C, 0x12, 0x17, 0x1D, 0x23, 0x28, 0x2E, 0x33, 0x39 }; const unsigned char acl_cutoff_43[] = { 0xC1, 0x47, 0x53, 0x13, 0x53, 0x00, 0x00, 0x02, 0xCF, 0x00, 0x00, 0x04, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0D, 0x14, 0x1A, 0x20, 0x26, 0x2C, 0x33, 0x39, 0x3F }; const unsigned char acl_cutoff_45[] = { 0xC1, 0x47, 0x53, 0x13, 0x53, 0x00, 0x00, 0x02, 0xCF, 0x00, 0x00, 0x04, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0E, 0x14, 0x1B, 0x21, 0x27, 0x2E, 0x34, 0x3B, 0x41 }; const unsigned char acl_cutoff_48[] = { 0xC1, 0x47, 0x53, 0x13, 0x53, 0x00, 0x00, 0x02, 0xCF, 0x00, 0x00, 0x04, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x08, 0x0F, 0x17, 0x1E, 0x25, 0x2C, 0x33, 0x3B, 0x42, 0x49 }; const unsigned char acl_cutoff_50[] = { 0xC1, 0x47, 0x53, 0x13, 0x53, 0x00, 0x00, 0x02, 0xCF, 0x00, 0x00, 0x04, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0x10, 0x18, 0x1F, 0x27, 0x2E, 0x36, 0x3D, 0x45, 0x4C }; const unsigned char acl_cutoff_52[] = { 0xC1, 0x47, 0x53, 0x13, 0x53, 0x00, 0x00, 0x02, 0xCF, 0x00, 0x00, 0x04, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0x11, 0x19, 0x21, 0x29, 0x31, 0x39, 0x41, 0x49, 0x51 }; const unsigned char acl_cutoff_53[] = { 0xC1, 0x47, 0x53, 0x13, 0x53, 0x00, 0x00, 0x02, 0xCF, 0x00, 0x00, 0x04, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0x11, 0x1A, 0x22, 0x2A, 0x32, 0x3A, 0x43, 0x4B, 0x53 }; const unsigned char acl_cutoff_55[] = { 0xC1, 0x47, 0x53, 0x13, 0x53, 0x00, 0x00, 0x02, 0xCF, 0x00, 0x00, 0x04, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0x12, 0x1B, 0x23, 0x2C, 0x35, 0x3D, 0x46, 0x4E, 0x57 }; const unsigned char *ACL_CUTOFF_TABLE[ACL_STATUS_MAX] = { SEQ_ACL_OFF, acl_cutoff_20, acl_cutoff_33, acl_cutoff_40, acl_cutoff_43, acl_cutoff_45, acl_cutoff_48, acl_cutoff_50, acl_cutoff_52, acl_cutoff_53, acl_cutoff_55, }; #endif /* __EA8061_PARAM_H__ */