rk30:update goodix driver from rk29
authorlw <lw@rock-chips.com>
Wed, 14 Mar 2012 02:30:05 +0000 (10:30 +0800)
committerlw <lw@rock-chips.com>
Wed, 14 Mar 2012 02:30:05 +0000 (10:30 +0800)
drivers/input/touchscreen/Kconfig
drivers/input/touchscreen/rk29_i2c_goodix.c
drivers/input/touchscreen/rk29_i2c_goodix.h

index aaad0b0361ecf7176c22eb6782285ed0f63400ce..feec9ba34e5dd68a272b748fe2e7b36d4f38f2e5 100755 (executable)
@@ -116,12 +116,25 @@ config TOUCHSCREEN_ILI2102_IIC
 
          If unsure, say N (but it's safe to say "Y").
 config TOUCHSCREEN_GT8XX
-        tristate "Goodix touch screen gt8xx support"
+        tristate "Goodix touch screen gt801X2 support for rockchip based platform"
         help
           Say Y here if you have a touchscreen interface using the
-          goodix gt8xx  , and your board-specific initialization
+          two goodix gt801  , and your board-specific initialization
           code includes that in its table of IIC devices.
-         If unsure, say N (but it's safe to say "Y").
+         If unsure, say N.
+       config TOUCH_MAX_X
+                int "touch max x resolution"
+                depends on TOUCHSCREEN_GT8XX
+                default 1280
+                help
+                  goodix  touch max X resolution
+
+        config TOUCH_MAX_Y
+                int "touch max y resolution"
+                depends on TOUCHSCREEN_GT8XX
+                default 800
+                help
+                  goodix touch max y resolution
 
 config RK28_I2C_TS_NTP070
        tristate "NTP070 based touchscreens: NTP070 Interface"
index eb14dbb305e7481608bf3fb67d0ad6af86087200..b4a43e71f9e0af65a388e3883191bc59beec432e 100755 (executable)
@@ -150,27 +150,35 @@ static int goodix_init_panel(struct rk_ts_data *ts)
        int ret=-1;\r
        uint8_t rd_cfg_buf[7] = {0x66,};\r
 \r
-#ifdef GOODIX_1024X768                 //for malata 10.1\r
-             uint8_t config_info[] = {\r
-                 0x65,0x02,0x04,0x00,0x03,0x00,0x0A,0x22,0x1E,0xE7,0x32,0x05,0x08,0x10,0x4C,\r
-                 0x41,0x41,0x20,0x09,0x00,0xA0,0xA0,0x3C,0x64,0x0E,0x0D,0x0C,0x0B,0x0A,0x09,\r
-                 0x08,0x07,0x06,0x05,0x04,0x03,0x02,0x01,0x00,0x1D,0x1C,0x1B,0x1A,0x19,0x18,\r
-                 0x17,0x16,0x15,0x14,0x13,0x12,0x11,0x10,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,\r
-                 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2B,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\r
-                 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00\r
-               };\r
+#if (TS_MAX_X == 1024)&&(TS_MAX_Y == 768)                      //for malata 10.1\r
+       uint8_t config_info[] = {\r
+               0x65,0x02,0x04,0x00,0x03,0x00,0x0A,0x22,0x1E,0xE7,0x32,0x05,0x08,0x10,0x4C,\r
+               0x41,0x41,0x20,0x09,0x00,0xA0,0xA0,0x3C,0x64,0x0E,0x0D,0x0C,0x0B,0x0A,0x09,\r
+               0x08,0x07,0x06,0x05,0x04,0x03,0x02,0x01,0x00,0x1D,0x1C,0x1B,0x1A,0x19,0x18,\r
+               0x17,0x16,0x15,0x14,0x13,0x12,0x11,0x10,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,\r
+               0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2B,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\r
+               0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00\r
+       };\r
              \r
+#elif (TS_MAX_X == 1280)&&(TS_MAX_Y == 800)    \r
+       uint8_t config_info[] = {\r
+               0x65,0x02,0x05,0x00,0x03,0x20,0x0A,0x22,0x1E,0xE7,0x32,0x05,0x08,0x10,0x4C,\r
+               0x41,0x41,0x20,0x07,0x00,0xA0,0xA0,0x46,0x64,0x0E,0x0D,0x0C,0x0B,0x0A,0x09,\r
+               0x08,0x07,0x06,0x05,0x04,0x03,0x02,0x01,0x00,0x1D,0x1C,0x1B,0x1A,0x19,0x18,\r
+               0x17,0x16,0x15,0x14,0x13,0x12,0x11,0x10,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,\r
+               0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0B,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\r
+               0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00\r
+       };\r
 #else\r
-               };*/\r
-         uint8_t config_info[] = {\r
-                  0x65,0x02,0x05,0x00,0x03,0x20,0x0A,0x22,0x1E,0xE7,0x32,0x05,0x08,0x10,0x4C,\r
-                                       0x42,0x42,0x20,0x00,0x00,0x89,0x89,0x3C,0x64,0x0E,0x0D,0x0C,0x0B,\r
-                                       0x0A,0x09,0x08,0x07,0x06,0x05,0x04,0x03,0x02,0x01,0x00,0x1D,0x1C,\r
-                                       0x1B,0x1A,0x19,0x18,0x17,0x16,0x15,0x14,0x13,0x12,0x11,0x10,0x0F,\r
-                                       0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\r
-                                       0x2B,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\r
-                                       0x00,0x00,0x00,0x00\r
-               };\r
+       uint8_t config_info[] = {\r
+               0x65,0x02,0x05,0x00,0x03,0x20,0x0A,0x22,0x1E,0xE7,0x32,0x05,0x08,0x10,0x4C,\r
+               0x42,0x42,0x20,0x00,0x00,0x89,0x89,0x3C,0x64,0x0E,0x0D,0x0C,0x0B,\r
+               0x0A,0x09,0x08,0x07,0x06,0x05,0x04,0x03,0x02,0x01,0x00,0x1D,0x1C,\r
+               0x1B,0x1A,0x19,0x18,0x17,0x16,0x15,0x14,0x13,0x12,0x11,0x10,0x0F,\r
+               0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\r
+               0x2B,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,\r
+               0x00,0x00,0x00,0x00\r
+       };\r
 #endif\r
        ret=goodix_i2c_write_bytes(ts->client,config_info, (sizeof(config_info)/sizeof(config_info[0])));\r
        if (ret < 0) {\r
index 950888cce88eea1287aef02d900cf78cb1de150a..338aaa961eb2fc391bdf74842401b4825e0b6dac 100755 (executable)
 //*************************TouchScreen Work Part*****************************
 
 #define GOODIX_I2C_NAME "Goodix-TS"
-#define GOODIX_1024X768         1
-
-#define TS_MAX_X       1024                    
-#define TS_MAX_Y               768
+#define TS_MAX_X       CONFIG_TOUCH_MAX_X
+#define TS_MAX_Y       CONFIG_TOUCH_MAX_Y
 
 #if 1
 #define INT_PORT               RK29_PIN0_PA2