summaryrefslogtreecommitdiffstats
path: root/include/linux/spi
diff options
context:
space:
mode:
authorDavid Jung <djung@nvidia.com>2013-01-27 20:49:58 -0500
committerDavid Pu <dpu@nvidia.com>2017-07-27 19:09:19 -0400
commitbc1c5effa5271fd0e6e19344ef3e43c26deca3ee (patch)
tree4d3e1152aaafabf2ee6c957f712851da14febabc /include/linux/spi
parent029ce5ce5ed5b39e86d5869deeaba00cc2f38904 (diff)
input: touch: raydium slow scan updates
Raydium code drop. Update code for slow scan. Bug 1054801 Change-Id: Ie123e14ab9892b8055ab7af4bae9dd14189acfa6 Signed-off-by: David Jung <djung@nvidia.com> Reviewed-on: http://git-master/r/194480 (cherry picked from commit 0ba3a9a571aa6eec71c7e27f765cf056c45c512d) Signed-off-by: David Jung <djung@nvidia.com> Change-Id: I8f52ea1bcbc48c1d152ffaa7613c3da4da5a47b6 Reviewed-on: http://git-master/r/201265 Reviewed-by: Mrutyunjay Sawant <msawant@nvidia.com> Tested-by: Mrutyunjay Sawant <msawant@nvidia.com>
Diffstat (limited to 'include/linux/spi')
-rw-r--r--include/linux/spi/rm31080a_ts.h131
1 files changed, 61 insertions, 70 deletions
diff --git a/include/linux/spi/rm31080a_ts.h b/include/linux/spi/rm31080a_ts.h
index 137135862..42ee65910 100644
--- a/include/linux/spi/rm31080a_ts.h
+++ b/include/linux/spi/rm31080a_ts.h
@@ -1,82 +1,71 @@
1#ifndef _RM31080A_TS_H_ 1#ifndef _RM31080A_TS_H_
2#define _RM31080A_TS_H_ 2#define _RM31080A_TS_H_
3 3
4#define ENABLE_RAW_DATA_QUEUE
5#define ENABLE_SLOW_SCAN 4#define ENABLE_SLOW_SCAN
6 5
7#define ENABLE_TOUCH_RESPONSE_TEST 1 /*Roger*/ 6#define RM_MAX_CHANNEL_COUNT 128
8#define ENABLE_RESOLUTION_SWITCH 1 /*Alex*/ 7#define RM_MAX_MT_COUNT 2048
9#define ENABLE_FILTER_SWITCH 0 /*Cage*/
10#define ENABLE_NEW_NOISE_MODE 0 /*Marty*/
11#define NOISE_SUM_CHECK 0 /*Nelson*/
12#define ENABLE_CALIBRATTION_BY_FIRMWARE 1
13#define ENABLE_NEW_PARAMETER 1
14
15#define ENABLE_T007B1_SETTING 1
16#define ENABLE_T007B1_STABLE_IDLE_MODE 1
17
18#define ENABLE_T007_ST_SCAN 0
19 #define T007B1_ST_DATA_ADDR 0x1CA0
20 #define T007C1_ST_DATA_ADDR 0x0514
21 #define T007B1_ST_NO_SWAP 0
22#define RM_MAX_CHANNEL_COUNT 128
23#define RM_MAX_MT_COUNT 2048
24 8
25/* Define for T007 A6/B1 IC version ckeck */ 9/* Define for T007 A6/B1 IC version ckeck */
26#define T007A6 0xD0 10#define T007A6 0xD0
27#define T007_VERSION_B 0xB0 11#define T007_VERSION_B 0xB0
28 #define T007B1 0xB0 12#define T007B1 0xB0
29 #define T007B2 0xB1 13#define T007B2 0xB1
30#define T007_VERSION_C 0xC0 14#define T007_VERSION_C 0xC0
31 15
32#define VERSION_A_PARAMETER_OFFSET 0x00 16#define VERSION_A_PARAMETER_OFFSET 0x00
33#define VERSION_B_PARAMETER_OFFSET 0x01 17#define VERSION_B_PARAMETER_OFFSET 0x01
34#define VERSION_C_PARAMETER_OFFSET 0x02 18#define VERSION_C_PARAMETER_OFFSET 0x02
35#define PARAMETER_AMOUNT 384 19#define PARAMETER_AMOUNT 384
36 20
37#define RM_IOCTL_REPORT_POINT 0x1001 21#define RM_IOCTL_REPORT_POINT 0x1001
38#define RM_IOCTL_SET_HAL_PID 0x1002 22#define RM_IOCTL_SET_HAL_PID 0x1002
39#define RM_IOCTL_INIT_START 0x1003 23#define RM_IOCTL_INIT_START 0x1003
40#define RM_IOCTL_INIT_END 0x1004 24#define RM_IOCTL_INIT_END 0x1004
41#define RM_IOCTL_FINISH_CALC 0x1005 25#define RM_IOCTL_FINISH_CALC 0x1005
42#define RM_IOCTL_SCRIBER_CTRL 0x1006 26#define RM_IOCTL_SCRIBER_CTRL 0x1006
43#define RM_IOCTL_READ_RAW_DATA 0x1007 27#define RM_IOCTL_READ_RAW_DATA 0x1007
44#define RM_IOCTL_AUTOSCAN_CTRL 0x1008 28#define RM_IOCTL_AUTOSCAN_CTRL 0x1008
45#define RM_IOCTL_NOISE_CHECK 0x1009 29#define RM_IOCTL_NOISE_CHECK 0x1009
46#define RM_IOCTL_GET_PARAMETER 0x100A 30#define RM_IOCTL_GET_PARAMETER 0x100A
47#define RM_IOCTL_SET_PARAMETER 0x100B 31#define RM_IOCTL_SET_PARAMETER 0x100B
48#define RM_IOCTL_SEND_BASELINE 0x100C 32#define RM_IOCTL_SEND_BASELINE 0x100C
49#define RM_IOCTL_SEND_ANALOG_BASELINE 0x100D 33#define RM_IOCTL_SEND_ANALOG_BASELINE 0x100D
50#define RM_IOCTL_SET_VARIABLE 0x1010 34#define RM_IOCTL_SET_VARIABLE 0x1010
51 #define RM_VARIABLE_SELF_TEST_RESULT 0x01 35 #define RM_VARIABLE_SELF_TEST_RESULT 0x01
52 #define RM_VARIABLE_SCRIBER_FLAG 0x02 36 #define RM_VARIABLE_SCRIBER_FLAG 0x02
53 #define RM_VARIABLE_AUTOSCAN_FLAG 0x03 37 #define RM_VARIABLE_AUTOSCAN_FLAG 0x03
54 #define RM_VARIABLE_VERSION 0x04 38 #define RM_VARIABLE_VERSION 0x04
55 #define RM_VARIABLE_REPEAT 0x06 39 #define RM_VARIABLE_IDLEMODECHECK 0x05
56#define RM_IOCTL_GET_VARIABLE 0x1011 40 #define RM_VARIABLE_REPEAT 0x06
41#define RM_IOCTL_GET_VARIABLE 0x1011
57 #define RM_VARIABLE_PLATFORM_ID 0x01 42 #define RM_VARIABLE_PLATFORM_ID 0x01
58#define RM_IOCTL_SET_SLOWSCAN_PARA 0x1012 43#define RM_IOCTL_SET_SLOWSCAN_PARA 0x1012
59 44#define RM_IOCTL_GET_SACN_MODE 0x1013
60#define RM_INPUT_RESOLUTION_X 4096 45
61#define RM_INPUT_RESOLUTION_Y 4096 46#define RM_INPUT_RESOLUTION_X 4096
62 47#define RM_INPUT_RESOLUTION_Y 4096
63#define RM_TS_SIGNAL 44 48
64#define RM_TS_MAX_POINTS 16 49#define RM_TS_SIGNAL 44
65 50#define RM_TS_MAX_POINTS 16
66#define RM_SIGNAL_INTR 0x00000001 51
67#define RM_SIGNAL_SUSPEND 0x00000002 52#define RM_SIGNAL_INTR 0x00000001
68#define RM_SIGNAL_RESUME 0x00000003 53#define RM_SIGNAL_SUSPEND 0x00000002
69#define RM_SIGNAL_CHANGE_PARA 0x00000004 54#define RM_SIGNAL_RESUME 0x00000003
70 #define RM_SIGNAL_PARA_SMOOTH 0x00 55#define RM_SIGNAL_CHANGE_PARA 0x00000004
71 #define RM_SIGNAL_PARA_SELF_TEST 0x01 56 #define RM_SIGNAL_PARA_SMOOTH 0x00
72 57 #define RM_SIGNAL_PARA_SELF_TEST 0x01
73 58#define RM_SIGNAL_ENTER_AUTO_SCAN 0x00000005
74#define RM_SELF_TEST_STATUS_FINISH 0 59#define RM_SIGNAL_LEAVE_AUTO_SCAN 0x00000006
75#define RM_SELF_TEST_STATUS_TESTING 1 60
76#define RM_SELF_TEST_RESULT_FAIL 0 61#define RM_SELF_TEST_STATUS_FINISH 0
77#define RM_SELF_TEST_RESULT_PASS 1 62#define RM_SELF_TEST_STATUS_TESTING 1
78 63#define RM_SELF_TEST_RESULT_FAIL 0
79 64#define RM_SELF_TEST_RESULT_PASS 1
65
66/****************************************************************************
67 * Platform define
68 ***************************************************************************/
80#define RM_PLATFORM_K007 0x00 69#define RM_PLATFORM_K007 0x00
81#define RM_PLATFORM_K107 0x01 70#define RM_PLATFORM_K107 0x01
82#define RM_PLATFORM_C210 0x02 71#define RM_PLATFORM_C210 0x02
@@ -87,8 +76,8 @@
87#define RM_PLATFORM_A10L 0x11 76#define RM_PLATFORM_A10L 0x11
88 77
89#ifdef ENABLE_SLOW_SCAN 78#ifdef ENABLE_SLOW_SCAN
90#define RM_SLOW_SCAN_INTERVAL 20 79#define RM_SLOW_SCAN_INTERVAL 20
91#define RM_SLOW_SCAN_CMD_COUNT 0x10 80#define RM_SLOW_SCAN_CMD_COUNT 0x10
92enum RM_SLOW_SCAN_LEVELS { 81enum RM_SLOW_SCAN_LEVELS {
93 RM_SLOW_SCAN_LEVEL_NORMAL, 82 RM_SLOW_SCAN_LEVEL_NORMAL,
94 RM_SLOW_SCAN_LEVEL_20, 83 RM_SLOW_SCAN_LEVEL_20,
@@ -141,6 +130,7 @@ struct rm_spi_ts_platform_data {
141 unsigned char *config; 130 unsigned char *config;
142 int platform_id; 131 int platform_id;
143 unsigned char *name_of_clock; 132 unsigned char *name_of_clock;
133 unsigned char *name_of_clock_con;
144}; 134};
145 135
146int rm31080_spi_byte_write(unsigned char u8Addr, unsigned char u8Value); 136int rm31080_spi_byte_write(unsigned char u8Addr, unsigned char u8Value);
@@ -149,5 +139,6 @@ int rm31080_spi_burst_write(unsigned char *pBuf, unsigned int u32Len);
149void rm31080_disable_touch(void); 139void rm31080_disable_touch(void);
150void rm31080_enable_touch(void); 140void rm31080_enable_touch(void);
151void rm31080_set_autoscan(unsigned char val); 141void rm31080_set_autoscan(unsigned char val);
142int rm31080_ts_send_signal(int pid, int iInfo);
152 143
153#endif /*_RM31080A_TS_H_*/ 144#endif /*_RM31080A_TS_H_*/