/drivers/amlogic/input/touch_screen/ssd253x-ts_TP.h
http://github.com/madmaze/Meson-3-Kernel · C Header · 127 lines · 109 code · 13 blank · 5 comment · 0 complexity · 8766959146a967e70b997d33a35f77b7 MD5 · raw file
- #define DRIVENO 19
- #define SENSENO 34
- #define ENABLE_INT 2 // 0->Polling, 1->Interupt, 2->Hybrid
- #define EdgeDisable 1 // if Edge Disable, set it to 1, else reset to 0, OR SSD2533 set 0
- #define RunningAverageMode 2 //{0,8},{5,3},{6,2},{7,1}
- #define RunningAverageDist 4 // Threshold Between two consecutive points
- #define MicroTimeTInterupt 25000000// 100Hz - 10,000,000us
- #define FINGERNO 5//10
- #define THRESHOLD 0x20
- #define SSDS53X_SCREEN_MAX_X 1024
- #define SSDS53X_SCREEN_MAX_Y 600
- #define SSD253x_TOUCH_KEY
- #undef SSD253x_TOUCH_KEY
- #ifdef SSD253x_TOUCH_KEY
- static uint32_t key_code[4] = {KEY_MENU, KEY_HOME, KEY_BACK, KEY_SEARCH };
- #endif
- #define SSD253x_CUT_EDGE //0x8b must be 0x00; EdgeDisable set 0
- #undef SSD253x_CUT_EDGE
- #ifdef SSD253x_CUT_EDGE
- #define XPOS_MAX (DRIVENO -EdgeDisable) *64
- #define YPOS_MAX (SENSENO -EdgeDisable) *64
- #endif
- #define SSD253x_SIMULATED_KEY
- //#undef SSD253x_SIMULATED_KEY
- #ifdef SSD253x_SIMULATED_KEY
- typedef struct{
-
- unsigned long left_x;
- unsigned long left_y;
- unsigned long right_x;
- unsigned long right_y;
- }SKey_Info,*pSKey_Info;
- SKey_Info SKeys[]={
- {1043,88,1088,50},
- {1043,238,1088,200},
- {1043,404,1088,362},
- {1043,532,1088,490},
- };
- static uint32_t key_code[4] = {KEY_SEARCH, KEY_HOME, KEY_MENU, KEY_BACK };
- #endif
- // SSD2533 Setting
- // Touch Panel Example
- struct ChipSetting ssd253xcfgTable[]={
- { 1, 0x06, 0x12, 0x00},
- { 1, 0x06, 0x12, 0x00},
- { 1, 0x07, 0x21, 0x00},
- { 2, 0x08, 0x00, 0x08},
- { 2, 0x09, 0x00, 0x87},
- { 2, 0x0A, 0x00, 0x86},
- { 2, 0x0B, 0x00, 0x85},
- { 2, 0x0C, 0x00, 0x84},
- { 2, 0x0D, 0x00, 0x83},
- { 2, 0x0E, 0x00, 0x82},
- { 2, 0x0F, 0x00, 0x81},
- { 2, 0x10, 0x00, 0X96},
- { 2, 0x11, 0x00, 0x95},
- { 2, 0x12, 0x00, 0x94},
- { 2, 0x13, 0x00, 0x93},
- { 2, 0x14, 0x00, 0X92},
- { 2, 0x15, 0x00, 0x91},
- { 2, 0x16, 0x00, 0x30},
- { 2, 0x17, 0x00, 0x6f},
- { 1, 0x1F, 0x01, 0x00},
- { 1, 0xD5, 0x05, 0x00},
- { 1, 0xD8, 0x04, 0x00},
- { 1, 0x2A, 0x07, 0x00},
- { 1, 0x2C, 0x01, 0x00},
- { 1, 0x2E, 0x0B, 0x00},
- { 1, 0x2F, 0x01, 0x00},
- { 1, 0x30, 0x05, 0x00},
- { 1, 0x31, 0x09, 0x00},
- { 1, 0xD7, 0x05, 0x00},
- { 1, 0xDB, 0x01, 0x00},
- { 2, 0x33, 0x00, 0x01},
- { 2, 0X34, 0X00, 0x50},
- { 2, 0x35, 0x00, 0x20},
- { 2, 0x36, 0x00, 0x18},
- { 1, 0x37, 0x00, 0x00},
- { 1, 0x39, 0x02, 0x00},
- { 1, 0x53, 0x16, 0x00},
- { 2, 0X54, 0X00, 0X90},
- { 2, 0x55, 0x00, 0x90},
- { 2, 0X5E, 0x00, 0x50},
- { 1, 0x5B, 0x20, 0x00},
- { 1, 0x8A, 0x06, 0x00},
- { 1, 0x8B, 0x01, 0x00},
- { 1, 0x8C, 0xB0, 0x00},
- { 1, 0x3D, 0x02, 0x00},
- { 1, 0x40, 0x60, 0x00},
- { 1, 0x44, 0x01, 0x00},
- { 1, 0x65, 0x03, 0x00},
- { 2, 0X66, 0x7f, 0xF8},
- { 2, 0X67, 0x7E, 0x48},
- { 2, 0x7A, 0xFF, 0xFF},
- { 2, 0x7B, 0x00, 0x00},
- { 1, 0x25, 0x0A, 0x00},
- };
- // For SSD2533 Bug Version Only //
- //#define SSD2533FIXEDCODE
- struct ChipSetting ssd253xcfgTable1[]={
- { 1, 0xA4, 0x00, 0x00}, //MCU prescaler default=01
- { 1, 0xD4, 0x08, 0x00}, //Dummy Code
- { 1, 0xD4, 0x08, 0x00}, //Set Osc frequency default=8, range 0 to F
- };
- struct ChipSetting Reset[]={
- { 0, 0x04, 0x00, 0x00}, // SSD2533
- };
- struct ChipSetting Resume[]={
- { 0, 0x04, 0x00, 0x00}, // SSD2533
- { 1, 0x25, 0x0A, 0x00}, // Set Operation Mode //Set from int setting
- };
- struct ChipSetting Suspend[] ={
- { 1, 0x25, 0x00, 0x00}, // Set Operation Mode
- { 0, 0x05, 0x00, 0x00}, // SSD2533
- };