aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input/mouse/trackpoint.h
diff options
context:
space:
mode:
authorShawn Nematbakhsh <shawnn@chromium.org>2013-04-15 16:49:34 -0400
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2013-04-19 12:05:44 -0400
commit0c6a61657da78098472fd0eb71cc01f2387fa1bb (patch)
treeb4d9cd085eaae625a3231edd1c5e64a9370ecd17 /drivers/input/mouse/trackpoint.h
parente07a8943b809730220a4aff911d2bce6991828f1 (diff)
Input: trackpoint - Optimize trackpoint init to use power-on reset
The trackpoint driver sets various parameter default values, all of which happen to be power-on defaults (Source: IBM TrackPoint Engineering Specification, Version 4.0. Also confirmed by empirical data). By sending the power-on reset command to reset all parameters to power-on state, we can skip the lengthy process of programming all parameters. In testing, ~2.5 secs of time writing parameters was reduced to .35 seconds waiting for power-on reset to complete. Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'drivers/input/mouse/trackpoint.h')
-rw-r--r--drivers/input/mouse/trackpoint.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/input/mouse/trackpoint.h b/drivers/input/mouse/trackpoint.h
index e558a7096618..ecd0547964a5 100644
--- a/drivers/input/mouse/trackpoint.h
+++ b/drivers/input/mouse/trackpoint.h
@@ -126,6 +126,8 @@
126#define TP_DEF_PTSON 0x00 126#define TP_DEF_PTSON 0x00
127#define TP_DEF_SKIPBACK 0x00 127#define TP_DEF_SKIPBACK 0x00
128#define TP_DEF_EXT_DEV 0x00 /* 0 means enabled */ 128#define TP_DEF_EXT_DEV 0x00 /* 0 means enabled */
129#define TP_DEF_TWOHAND 0x00
130#define TP_DEF_SOURCE_TAG 0x00
129 131
130#define MAKE_PS2_CMD(params, results, cmd) ((params<<12) | (results<<8) | (cmd)) 132#define MAKE_PS2_CMD(params, results, cmd) ((params<<12) | (results<<8) | (cmd))
131 133
@@ -136,9 +138,9 @@ struct trackpoint_data
136 unsigned char thresh, upthresh; 138 unsigned char thresh, upthresh;
137 unsigned char ztime, jenks; 139 unsigned char ztime, jenks;
138 140
141 /* toggles */
139 unsigned char press_to_select; 142 unsigned char press_to_select;
140 unsigned char skipback; 143 unsigned char skipback;
141
142 unsigned char ext_dev; 144 unsigned char ext_dev;
143}; 145};
144 146