diff options
author | Jeff Garzik <jeff@garzik.org> | 2006-10-05 21:03:43 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-10-05 21:03:43 -0400 |
commit | 4ad99f15c6a3cadf36928c399459ea4fdb3d49f9 (patch) | |
tree | d0536e4da737900fa27b235f175a3d179d692200 /drivers/input/touchscreen | |
parent | 46767aeba58ca9357a2309765201bad38d8f5e9b (diff) | |
parent | 44aefd2706bb6f5b65ba2c38cd89e7609e2b43d3 (diff) |
Merge branch 'master' into upstream-fixes
Diffstat (limited to 'drivers/input/touchscreen')
-rw-r--r-- | drivers/input/touchscreen/ads7846.c | 2 | ||||
-rw-r--r-- | drivers/input/touchscreen/corgi_ts.c | 13 | ||||
-rw-r--r-- | drivers/input/touchscreen/elo.c | 17 | ||||
-rw-r--r-- | drivers/input/touchscreen/gunze.c | 7 | ||||
-rw-r--r-- | drivers/input/touchscreen/h3600_ts_input.c | 14 | ||||
-rw-r--r-- | drivers/input/touchscreen/hp680_ts_input.c | 2 | ||||
-rw-r--r-- | drivers/input/touchscreen/mk712.c | 3 | ||||
-rw-r--r-- | drivers/input/touchscreen/mtouch.c | 11 | ||||
-rw-r--r-- | drivers/input/touchscreen/penmount.c | 3 | ||||
-rw-r--r-- | drivers/input/touchscreen/touchright.c | 3 | ||||
-rw-r--r-- | drivers/input/touchscreen/touchwin.c | 3 |
11 files changed, 32 insertions, 46 deletions
diff --git a/drivers/input/touchscreen/ads7846.c b/drivers/input/touchscreen/ads7846.c index 66e411badf70..f56d6a0f0624 100644 --- a/drivers/input/touchscreen/ads7846.c +++ b/drivers/input/touchscreen/ads7846.c | |||
@@ -487,7 +487,7 @@ static void ads7846_timer(unsigned long handle) | |||
487 | spin_unlock_irq(&ts->lock); | 487 | spin_unlock_irq(&ts->lock); |
488 | } | 488 | } |
489 | 489 | ||
490 | static irqreturn_t ads7846_irq(int irq, void *handle, struct pt_regs *regs) | 490 | static irqreturn_t ads7846_irq(int irq, void *handle) |
491 | { | 491 | { |
492 | struct ads7846 *ts = handle; | 492 | struct ads7846 *ts = handle; |
493 | unsigned long flags; | 493 | unsigned long flags; |
diff --git a/drivers/input/touchscreen/corgi_ts.c b/drivers/input/touchscreen/corgi_ts.c index 9b66271d3ba8..ca79b2246195 100644 --- a/drivers/input/touchscreen/corgi_ts.c +++ b/drivers/input/touchscreen/corgi_ts.c | |||
@@ -173,7 +173,7 @@ static int read_xydata(struct corgi_ts *corgi_ts) | |||
173 | return 1; | 173 | return 1; |
174 | } | 174 | } |
175 | 175 | ||
176 | static void new_data(struct corgi_ts *corgi_ts, struct pt_regs *regs) | 176 | static void new_data(struct corgi_ts *corgi_ts) |
177 | { | 177 | { |
178 | if (corgi_ts->power_mode != PWR_MODE_ACTIVE) | 178 | if (corgi_ts->power_mode != PWR_MODE_ACTIVE) |
179 | return; | 179 | return; |
@@ -181,7 +181,6 @@ static void new_data(struct corgi_ts *corgi_ts, struct pt_regs *regs) | |||
181 | if (!corgi_ts->tc.pressure && corgi_ts->pendown == 0) | 181 | if (!corgi_ts->tc.pressure && corgi_ts->pendown == 0) |
182 | return; | 182 | return; |
183 | 183 | ||
184 | input_regs(corgi_ts->input, regs); | ||
185 | input_report_abs(corgi_ts->input, ABS_X, corgi_ts->tc.x); | 184 | input_report_abs(corgi_ts->input, ABS_X, corgi_ts->tc.x); |
186 | input_report_abs(corgi_ts->input, ABS_Y, corgi_ts->tc.y); | 185 | input_report_abs(corgi_ts->input, ABS_Y, corgi_ts->tc.y); |
187 | input_report_abs(corgi_ts->input, ABS_PRESSURE, corgi_ts->tc.pressure); | 186 | input_report_abs(corgi_ts->input, ABS_PRESSURE, corgi_ts->tc.pressure); |
@@ -189,14 +188,14 @@ static void new_data(struct corgi_ts *corgi_ts, struct pt_regs *regs) | |||
189 | input_sync(corgi_ts->input); | 188 | input_sync(corgi_ts->input); |
190 | } | 189 | } |
191 | 190 | ||
192 | static void ts_interrupt_main(struct corgi_ts *corgi_ts, int isTimer, struct pt_regs *regs) | 191 | static void ts_interrupt_main(struct corgi_ts *corgi_ts, int isTimer) |
193 | { | 192 | { |
194 | if ((GPLR(IRQ_TO_GPIO(corgi_ts->irq_gpio)) & GPIO_bit(IRQ_TO_GPIO(corgi_ts->irq_gpio))) == 0) { | 193 | if ((GPLR(IRQ_TO_GPIO(corgi_ts->irq_gpio)) & GPIO_bit(IRQ_TO_GPIO(corgi_ts->irq_gpio))) == 0) { |
195 | /* Disable Interrupt */ | 194 | /* Disable Interrupt */ |
196 | set_irq_type(corgi_ts->irq_gpio, IRQT_NOEDGE); | 195 | set_irq_type(corgi_ts->irq_gpio, IRQT_NOEDGE); |
197 | if (read_xydata(corgi_ts)) { | 196 | if (read_xydata(corgi_ts)) { |
198 | corgi_ts->pendown = 1; | 197 | corgi_ts->pendown = 1; |
199 | new_data(corgi_ts, regs); | 198 | new_data(corgi_ts); |
200 | } | 199 | } |
201 | mod_timer(&corgi_ts->timer, jiffies + HZ / 100); | 200 | mod_timer(&corgi_ts->timer, jiffies + HZ / 100); |
202 | } else { | 201 | } else { |
@@ -208,7 +207,7 @@ static void ts_interrupt_main(struct corgi_ts *corgi_ts, int isTimer, struct pt_ | |||
208 | 207 | ||
209 | if (corgi_ts->pendown) { | 208 | if (corgi_ts->pendown) { |
210 | corgi_ts->tc.pressure = 0; | 209 | corgi_ts->tc.pressure = 0; |
211 | new_data(corgi_ts, regs); | 210 | new_data(corgi_ts); |
212 | } | 211 | } |
213 | 212 | ||
214 | /* Enable Falling Edge */ | 213 | /* Enable Falling Edge */ |
@@ -223,10 +222,10 @@ static void corgi_ts_timer(unsigned long data) | |||
223 | ts_interrupt_main(corgits_data, 1, NULL); | 222 | ts_interrupt_main(corgits_data, 1, NULL); |
224 | } | 223 | } |
225 | 224 | ||
226 | static irqreturn_t ts_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 225 | static irqreturn_t ts_interrupt(int irq, void *dev_id) |
227 | { | 226 | { |
228 | struct corgi_ts *corgits_data = dev_id; | 227 | struct corgi_ts *corgits_data = dev_id; |
229 | ts_interrupt_main(corgits_data, 0, regs); | 228 | ts_interrupt_main(corgits_data, 0); |
230 | return IRQ_HANDLED; | 229 | return IRQ_HANDLED; |
231 | } | 230 | } |
232 | 231 | ||
diff --git a/drivers/input/touchscreen/elo.c b/drivers/input/touchscreen/elo.c index ab565335ee44..913e1b73bb0e 100644 --- a/drivers/input/touchscreen/elo.c +++ b/drivers/input/touchscreen/elo.c | |||
@@ -67,7 +67,7 @@ struct elo { | |||
67 | char phys[32]; | 67 | char phys[32]; |
68 | }; | 68 | }; |
69 | 69 | ||
70 | static void elo_process_data_10(struct elo *elo, unsigned char data, struct pt_regs *regs) | 70 | static void elo_process_data_10(struct elo *elo, unsigned char data) |
71 | { | 71 | { |
72 | struct input_dev *dev = elo->dev; | 72 | struct input_dev *dev = elo->dev; |
73 | 73 | ||
@@ -95,7 +95,6 @@ static void elo_process_data_10(struct elo *elo, unsigned char data, struct pt_r | |||
95 | break; | 95 | break; |
96 | } | 96 | } |
97 | if (likely(elo->data[1] == ELO10_TOUCH_PACKET)) { | 97 | if (likely(elo->data[1] == ELO10_TOUCH_PACKET)) { |
98 | input_regs(dev, regs); | ||
99 | input_report_abs(dev, ABS_X, (elo->data[4] << 8) | elo->data[3]); | 98 | input_report_abs(dev, ABS_X, (elo->data[4] << 8) | elo->data[3]); |
100 | input_report_abs(dev, ABS_Y, (elo->data[6] << 8) | elo->data[5]); | 99 | input_report_abs(dev, ABS_Y, (elo->data[6] << 8) | elo->data[5]); |
101 | if (elo->data[2] & ELO10_PRESSURE) | 100 | if (elo->data[2] & ELO10_PRESSURE) |
@@ -116,7 +115,7 @@ static void elo_process_data_10(struct elo *elo, unsigned char data, struct pt_r | |||
116 | elo->csum += data; | 115 | elo->csum += data; |
117 | } | 116 | } |
118 | 117 | ||
119 | static void elo_process_data_6(struct elo *elo, unsigned char data, struct pt_regs *regs) | 118 | static void elo_process_data_6(struct elo *elo, unsigned char data) |
120 | { | 119 | { |
121 | struct input_dev *dev = elo->dev; | 120 | struct input_dev *dev = elo->dev; |
122 | 121 | ||
@@ -134,7 +133,6 @@ static void elo_process_data_6(struct elo *elo, unsigned char data, struct pt_re | |||
134 | break; | 133 | break; |
135 | } | 134 | } |
136 | 135 | ||
137 | input_regs(dev, regs); | ||
138 | input_report_abs(dev, ABS_X, ((elo->data[0] & 0x3f) << 6) | (elo->data[1] & 0x3f)); | 136 | input_report_abs(dev, ABS_X, ((elo->data[0] & 0x3f) << 6) | (elo->data[1] & 0x3f)); |
139 | input_report_abs(dev, ABS_Y, ((elo->data[2] & 0x3f) << 6) | (elo->data[3] & 0x3f)); | 137 | input_report_abs(dev, ABS_Y, ((elo->data[2] & 0x3f) << 6) | (elo->data[3] & 0x3f)); |
140 | 138 | ||
@@ -164,7 +162,7 @@ static void elo_process_data_6(struct elo *elo, unsigned char data, struct pt_re | |||
164 | } | 162 | } |
165 | } | 163 | } |
166 | 164 | ||
167 | static void elo_process_data_3(struct elo *elo, unsigned char data, struct pt_regs *regs) | 165 | static void elo_process_data_3(struct elo *elo, unsigned char data) |
168 | { | 166 | { |
169 | struct input_dev *dev = elo->dev; | 167 | struct input_dev *dev = elo->dev; |
170 | 168 | ||
@@ -177,7 +175,6 @@ static void elo_process_data_3(struct elo *elo, unsigned char data, struct pt_re | |||
177 | elo->idx = 0; | 175 | elo->idx = 0; |
178 | break; | 176 | break; |
179 | case 2: | 177 | case 2: |
180 | input_regs(dev, regs); | ||
181 | input_report_key(dev, BTN_TOUCH, !(elo->data[1] & 0x80)); | 178 | input_report_key(dev, BTN_TOUCH, !(elo->data[1] & 0x80)); |
182 | input_report_abs(dev, ABS_X, elo->data[1]); | 179 | input_report_abs(dev, ABS_X, elo->data[1]); |
183 | input_report_abs(dev, ABS_Y, elo->data[2]); | 180 | input_report_abs(dev, ABS_Y, elo->data[2]); |
@@ -188,22 +185,22 @@ static void elo_process_data_3(struct elo *elo, unsigned char data, struct pt_re | |||
188 | } | 185 | } |
189 | 186 | ||
190 | static irqreturn_t elo_interrupt(struct serio *serio, | 187 | static irqreturn_t elo_interrupt(struct serio *serio, |
191 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 188 | unsigned char data, unsigned int flags) |
192 | { | 189 | { |
193 | struct elo *elo = serio_get_drvdata(serio); | 190 | struct elo *elo = serio_get_drvdata(serio); |
194 | 191 | ||
195 | switch(elo->id) { | 192 | switch(elo->id) { |
196 | case 0: | 193 | case 0: |
197 | elo_process_data_10(elo, data, regs); | 194 | elo_process_data_10(elo, data); |
198 | break; | 195 | break; |
199 | 196 | ||
200 | case 1: | 197 | case 1: |
201 | case 2: | 198 | case 2: |
202 | elo_process_data_6(elo, data, regs); | 199 | elo_process_data_6(elo, data); |
203 | break; | 200 | break; |
204 | 201 | ||
205 | case 3: | 202 | case 3: |
206 | elo_process_data_3(elo, data, regs); | 203 | elo_process_data_3(elo, data); |
207 | break; | 204 | break; |
208 | } | 205 | } |
209 | 206 | ||
diff --git a/drivers/input/touchscreen/gunze.c b/drivers/input/touchscreen/gunze.c index b769b21973b7..817c2198933d 100644 --- a/drivers/input/touchscreen/gunze.c +++ b/drivers/input/touchscreen/gunze.c | |||
@@ -60,7 +60,7 @@ struct gunze { | |||
60 | char phys[32]; | 60 | char phys[32]; |
61 | }; | 61 | }; |
62 | 62 | ||
63 | static void gunze_process_packet(struct gunze* gunze, struct pt_regs *regs) | 63 | static void gunze_process_packet(struct gunze* gunze) |
64 | { | 64 | { |
65 | struct input_dev *dev = gunze->dev; | 65 | struct input_dev *dev = gunze->dev; |
66 | 66 | ||
@@ -70,7 +70,6 @@ static void gunze_process_packet(struct gunze* gunze, struct pt_regs *regs) | |||
70 | return; | 70 | return; |
71 | } | 71 | } |
72 | 72 | ||
73 | input_regs(dev, regs); | ||
74 | input_report_abs(dev, ABS_X, simple_strtoul(gunze->data + 1, NULL, 10)); | 73 | input_report_abs(dev, ABS_X, simple_strtoul(gunze->data + 1, NULL, 10)); |
75 | input_report_abs(dev, ABS_Y, 1024 - simple_strtoul(gunze->data + 6, NULL, 10)); | 74 | input_report_abs(dev, ABS_Y, 1024 - simple_strtoul(gunze->data + 6, NULL, 10)); |
76 | input_report_key(dev, BTN_TOUCH, gunze->data[0] == 'T'); | 75 | input_report_key(dev, BTN_TOUCH, gunze->data[0] == 'T'); |
@@ -78,12 +77,12 @@ static void gunze_process_packet(struct gunze* gunze, struct pt_regs *regs) | |||
78 | } | 77 | } |
79 | 78 | ||
80 | static irqreturn_t gunze_interrupt(struct serio *serio, | 79 | static irqreturn_t gunze_interrupt(struct serio *serio, |
81 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 80 | unsigned char data, unsigned int flags) |
82 | { | 81 | { |
83 | struct gunze* gunze = serio_get_drvdata(serio); | 82 | struct gunze* gunze = serio_get_drvdata(serio); |
84 | 83 | ||
85 | if (data == '\r') { | 84 | if (data == '\r') { |
86 | gunze_process_packet(gunze, regs); | 85 | gunze_process_packet(gunze); |
87 | gunze->idx = 0; | 86 | gunze->idx = 0; |
88 | } else { | 87 | } else { |
89 | if (gunze->idx < GUNZE_MAX_LENGTH) | 88 | if (gunze->idx < GUNZE_MAX_LENGTH) |
diff --git a/drivers/input/touchscreen/h3600_ts_input.c b/drivers/input/touchscreen/h3600_ts_input.c index e2b910018773..d9e61ee05ea9 100644 --- a/drivers/input/touchscreen/h3600_ts_input.c +++ b/drivers/input/touchscreen/h3600_ts_input.c | |||
@@ -106,19 +106,18 @@ struct h3600_dev { | |||
106 | char phys[32]; | 106 | char phys[32]; |
107 | }; | 107 | }; |
108 | 108 | ||
109 | static irqreturn_t action_button_handler(int irq, void *dev_id, struct pt_regs *regs) | 109 | static irqreturn_t action_button_handler(int irq, void *dev_id) |
110 | { | 110 | { |
111 | int down = (GPLR & GPIO_BITSY_ACTION_BUTTON) ? 0 : 1; | 111 | int down = (GPLR & GPIO_BITSY_ACTION_BUTTON) ? 0 : 1; |
112 | struct input_dev *dev = (struct input_dev *) dev_id; | 112 | struct input_dev *dev = (struct input_dev *) dev_id; |
113 | 113 | ||
114 | input_regs(dev, regs); | ||
115 | input_report_key(dev, KEY_ENTER, down); | 114 | input_report_key(dev, KEY_ENTER, down); |
116 | input_sync(dev); | 115 | input_sync(dev); |
117 | 116 | ||
118 | return IRQ_HANDLED; | 117 | return IRQ_HANDLED; |
119 | } | 118 | } |
120 | 119 | ||
121 | static irqreturn_t npower_button_handler(int irq, void *dev_id, struct pt_regs *regs) | 120 | static irqreturn_t npower_button_handler(int irq, void *dev_id) |
122 | { | 121 | { |
123 | int down = (GPLR & GPIO_BITSY_NPOWER_BUTTON) ? 0 : 1; | 122 | int down = (GPLR & GPIO_BITSY_NPOWER_BUTTON) ? 0 : 1; |
124 | struct input_dev *dev = (struct input_dev *) dev_id; | 123 | struct input_dev *dev = (struct input_dev *) dev_id; |
@@ -127,7 +126,6 @@ static irqreturn_t npower_button_handler(int irq, void *dev_id, struct pt_regs * | |||
127 | * This interrupt is only called when we release the key. So we have | 126 | * This interrupt is only called when we release the key. So we have |
128 | * to fake a key press. | 127 | * to fake a key press. |
129 | */ | 128 | */ |
130 | input_regs(dev, regs); | ||
131 | input_report_key(dev, KEY_SUSPEND, 1); | 129 | input_report_key(dev, KEY_SUSPEND, 1); |
132 | input_report_key(dev, KEY_SUSPEND, down); | 130 | input_report_key(dev, KEY_SUSPEND, down); |
133 | input_sync(dev); | 131 | input_sync(dev); |
@@ -165,14 +163,12 @@ unsigned int h3600_flite_power(struct input_dev *dev, enum flite_pwr pwr) | |||
165 | * packets. Some packets coming from serial are not touchscreen related. In | 163 | * packets. Some packets coming from serial are not touchscreen related. In |
166 | * this case we send them off to be processed elsewhere. | 164 | * this case we send them off to be processed elsewhere. |
167 | */ | 165 | */ |
168 | static void h3600ts_process_packet(struct h3600_dev *ts, struct pt_regs *regs) | 166 | static void h3600ts_process_packet(struct h3600_dev *ts) |
169 | { | 167 | { |
170 | struct input_dev *dev = ts->dev; | 168 | struct input_dev *dev = ts->dev; |
171 | static int touched = 0; | 169 | static int touched = 0; |
172 | int key, down = 0; | 170 | int key, down = 0; |
173 | 171 | ||
174 | input_regs(dev, regs); | ||
175 | |||
176 | switch (ts->event) { | 172 | switch (ts->event) { |
177 | /* | 173 | /* |
178 | Buttons - returned as a single byte | 174 | Buttons - returned as a single byte |
@@ -301,7 +297,7 @@ static int state; | |||
301 | #define STATE_EOF 3 /* state where we decode checksum or EOF */ | 297 | #define STATE_EOF 3 /* state where we decode checksum or EOF */ |
302 | 298 | ||
303 | static irqreturn_t h3600ts_interrupt(struct serio *serio, unsigned char data, | 299 | static irqreturn_t h3600ts_interrupt(struct serio *serio, unsigned char data, |
304 | unsigned int flags, struct pt_regs *regs) | 300 | unsigned int flags) |
305 | { | 301 | { |
306 | struct h3600_dev *ts = serio_get_drvdata(serio); | 302 | struct h3600_dev *ts = serio_get_drvdata(serio); |
307 | 303 | ||
@@ -333,7 +329,7 @@ static irqreturn_t h3600ts_interrupt(struct serio *serio, unsigned char data, | |||
333 | case STATE_EOF: | 329 | case STATE_EOF: |
334 | state = STATE_SOF; | 330 | state = STATE_SOF; |
335 | if (data == CHAR_EOF || data == ts->chksum) | 331 | if (data == CHAR_EOF || data == ts->chksum) |
336 | h3600ts_process_packet(ts, regs); | 332 | h3600ts_process_packet(ts); |
337 | break; | 333 | break; |
338 | default: | 334 | default: |
339 | printk("Error3\n"); | 335 | printk("Error3\n"); |
diff --git a/drivers/input/touchscreen/hp680_ts_input.c b/drivers/input/touchscreen/hp680_ts_input.c index ee6c2f40cdf6..e31c6c55b2e2 100644 --- a/drivers/input/touchscreen/hp680_ts_input.c +++ b/drivers/input/touchscreen/hp680_ts_input.c | |||
@@ -66,7 +66,7 @@ static void do_softint(void *data) | |||
66 | enable_irq(HP680_TS_IRQ); | 66 | enable_irq(HP680_TS_IRQ); |
67 | } | 67 | } |
68 | 68 | ||
69 | static irqreturn_t hp680_ts_interrupt(int irq, void *dev, struct pt_regs *regs) | 69 | static irqreturn_t hp680_ts_interrupt(int irq, void *dev) |
70 | { | 70 | { |
71 | disable_irq_nosync(irq); | 71 | disable_irq_nosync(irq); |
72 | schedule_delayed_work(&work, HZ / 20); | 72 | schedule_delayed_work(&work, HZ / 20); |
diff --git a/drivers/input/touchscreen/mk712.c b/drivers/input/touchscreen/mk712.c index 3226830eea08..4cbcaa6a71e5 100644 --- a/drivers/input/touchscreen/mk712.c +++ b/drivers/input/touchscreen/mk712.c | |||
@@ -80,7 +80,7 @@ MODULE_PARM_DESC(irq, "IRQ of MK712 touchscreen controller"); | |||
80 | static struct input_dev *mk712_dev; | 80 | static struct input_dev *mk712_dev; |
81 | static DEFINE_SPINLOCK(mk712_lock); | 81 | static DEFINE_SPINLOCK(mk712_lock); |
82 | 82 | ||
83 | static irqreturn_t mk712_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 83 | static irqreturn_t mk712_interrupt(int irq, void *dev_id) |
84 | { | 84 | { |
85 | unsigned char status; | 85 | unsigned char status; |
86 | static int debounce = 1; | 86 | static int debounce = 1; |
@@ -88,7 +88,6 @@ static irqreturn_t mk712_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
88 | static unsigned short last_y; | 88 | static unsigned short last_y; |
89 | 89 | ||
90 | spin_lock(&mk712_lock); | 90 | spin_lock(&mk712_lock); |
91 | input_regs(mk712_dev, regs); | ||
92 | 91 | ||
93 | status = inb(mk712_io + MK712_STATUS); | 92 | status = inb(mk712_io + MK712_STATUS); |
94 | 93 | ||
diff --git a/drivers/input/touchscreen/mtouch.c b/drivers/input/touchscreen/mtouch.c index 8647a905df80..3b4c61664b63 100644 --- a/drivers/input/touchscreen/mtouch.c +++ b/drivers/input/touchscreen/mtouch.c | |||
@@ -63,12 +63,11 @@ struct mtouch { | |||
63 | char phys[32]; | 63 | char phys[32]; |
64 | }; | 64 | }; |
65 | 65 | ||
66 | static void mtouch_process_format_tablet(struct mtouch *mtouch, struct pt_regs *regs) | 66 | static void mtouch_process_format_tablet(struct mtouch *mtouch) |
67 | { | 67 | { |
68 | struct input_dev *dev = mtouch->dev; | 68 | struct input_dev *dev = mtouch->dev; |
69 | 69 | ||
70 | if (MTOUCH_FORMAT_TABLET_LENGTH == ++mtouch->idx) { | 70 | if (MTOUCH_FORMAT_TABLET_LENGTH == ++mtouch->idx) { |
71 | input_regs(dev, regs); | ||
72 | input_report_abs(dev, ABS_X, MTOUCH_GET_XC(mtouch->data)); | 71 | input_report_abs(dev, ABS_X, MTOUCH_GET_XC(mtouch->data)); |
73 | input_report_abs(dev, ABS_Y, MTOUCH_MAX_YC - MTOUCH_GET_YC(mtouch->data)); | 72 | input_report_abs(dev, ABS_Y, MTOUCH_MAX_YC - MTOUCH_GET_YC(mtouch->data)); |
74 | input_report_key(dev, BTN_TOUCH, MTOUCH_GET_TOUCHED(mtouch->data)); | 73 | input_report_key(dev, BTN_TOUCH, MTOUCH_GET_TOUCHED(mtouch->data)); |
@@ -78,7 +77,7 @@ static void mtouch_process_format_tablet(struct mtouch *mtouch, struct pt_regs * | |||
78 | } | 77 | } |
79 | } | 78 | } |
80 | 79 | ||
81 | static void mtouch_process_response(struct mtouch *mtouch, struct pt_regs *regs) | 80 | static void mtouch_process_response(struct mtouch *mtouch) |
82 | { | 81 | { |
83 | if (MTOUCH_RESPONSE_END_BYTE == mtouch->data[mtouch->idx++]) { | 82 | if (MTOUCH_RESPONSE_END_BYTE == mtouch->data[mtouch->idx++]) { |
84 | /* FIXME - process response */ | 83 | /* FIXME - process response */ |
@@ -90,16 +89,16 @@ static void mtouch_process_response(struct mtouch *mtouch, struct pt_regs *regs) | |||
90 | } | 89 | } |
91 | 90 | ||
92 | static irqreturn_t mtouch_interrupt(struct serio *serio, | 91 | static irqreturn_t mtouch_interrupt(struct serio *serio, |
93 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 92 | unsigned char data, unsigned int flags) |
94 | { | 93 | { |
95 | struct mtouch* mtouch = serio_get_drvdata(serio); | 94 | struct mtouch* mtouch = serio_get_drvdata(serio); |
96 | 95 | ||
97 | mtouch->data[mtouch->idx] = data; | 96 | mtouch->data[mtouch->idx] = data; |
98 | 97 | ||
99 | if (MTOUCH_FORMAT_TABLET_STATUS_BIT & mtouch->data[0]) | 98 | if (MTOUCH_FORMAT_TABLET_STATUS_BIT & mtouch->data[0]) |
100 | mtouch_process_format_tablet(mtouch, regs); | 99 | mtouch_process_format_tablet(mtouch); |
101 | else if (MTOUCH_RESPONSE_BEGIN_BYTE == mtouch->data[0]) | 100 | else if (MTOUCH_RESPONSE_BEGIN_BYTE == mtouch->data[0]) |
102 | mtouch_process_response(mtouch, regs); | 101 | mtouch_process_response(mtouch); |
103 | else | 102 | else |
104 | printk(KERN_DEBUG "mtouch.c: unknown/unsynchronized data from device, byte %x\n",mtouch->data[0]); | 103 | printk(KERN_DEBUG "mtouch.c: unknown/unsynchronized data from device, byte %x\n",mtouch->data[0]); |
105 | 104 | ||
diff --git a/drivers/input/touchscreen/penmount.c b/drivers/input/touchscreen/penmount.c index f7370109d43e..6c7d0c2c76cc 100644 --- a/drivers/input/touchscreen/penmount.c +++ b/drivers/input/touchscreen/penmount.c | |||
@@ -46,7 +46,7 @@ struct pm { | |||
46 | }; | 46 | }; |
47 | 47 | ||
48 | static irqreturn_t pm_interrupt(struct serio *serio, | 48 | static irqreturn_t pm_interrupt(struct serio *serio, |
49 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 49 | unsigned char data, unsigned int flags) |
50 | { | 50 | { |
51 | struct pm *pm = serio_get_drvdata(serio); | 51 | struct pm *pm = serio_get_drvdata(serio); |
52 | struct input_dev *dev = pm->dev; | 52 | struct input_dev *dev = pm->dev; |
@@ -55,7 +55,6 @@ static irqreturn_t pm_interrupt(struct serio *serio, | |||
55 | 55 | ||
56 | if (pm->data[0] & 0x80) { | 56 | if (pm->data[0] & 0x80) { |
57 | if (PM_MAX_LENGTH == ++pm->idx) { | 57 | if (PM_MAX_LENGTH == ++pm->idx) { |
58 | input_regs(dev, regs); | ||
59 | input_report_abs(dev, ABS_X, pm->data[2] * 128 + pm->data[1]); | 58 | input_report_abs(dev, ABS_X, pm->data[2] * 128 + pm->data[1]); |
60 | input_report_abs(dev, ABS_Y, pm->data[4] * 128 + pm->data[3]); | 59 | input_report_abs(dev, ABS_Y, pm->data[4] * 128 + pm->data[3]); |
61 | input_report_key(dev, BTN_TOUCH, !!(pm->data[0] & 0x40)); | 60 | input_report_key(dev, BTN_TOUCH, !!(pm->data[0] & 0x40)); |
diff --git a/drivers/input/touchscreen/touchright.c b/drivers/input/touchscreen/touchright.c index 1c89fa538651..c74f74e57af0 100644 --- a/drivers/input/touchscreen/touchright.c +++ b/drivers/input/touchscreen/touchright.c | |||
@@ -56,7 +56,7 @@ struct tr { | |||
56 | }; | 56 | }; |
57 | 57 | ||
58 | static irqreturn_t tr_interrupt(struct serio *serio, | 58 | static irqreturn_t tr_interrupt(struct serio *serio, |
59 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 59 | unsigned char data, unsigned int flags) |
60 | { | 60 | { |
61 | struct tr *tr = serio_get_drvdata(serio); | 61 | struct tr *tr = serio_get_drvdata(serio); |
62 | struct input_dev *dev = tr->dev; | 62 | struct input_dev *dev = tr->dev; |
@@ -65,7 +65,6 @@ static irqreturn_t tr_interrupt(struct serio *serio, | |||
65 | 65 | ||
66 | if ((tr->data[0] & TR_FORMAT_STATUS_MASK) == TR_FORMAT_STATUS_BYTE) { | 66 | if ((tr->data[0] & TR_FORMAT_STATUS_MASK) == TR_FORMAT_STATUS_BYTE) { |
67 | if (++tr->idx == TR_LENGTH) { | 67 | if (++tr->idx == TR_LENGTH) { |
68 | input_regs(dev, regs); | ||
69 | input_report_abs(dev, ABS_X, | 68 | input_report_abs(dev, ABS_X, |
70 | (tr->data[1] << 5) | (tr->data[2] >> 1)); | 69 | (tr->data[1] << 5) | (tr->data[2] >> 1)); |
71 | input_report_abs(dev, ABS_Y, | 70 | input_report_abs(dev, ABS_Y, |
diff --git a/drivers/input/touchscreen/touchwin.c b/drivers/input/touchscreen/touchwin.c index a7b4c755958e..9911820fa2fe 100644 --- a/drivers/input/touchscreen/touchwin.c +++ b/drivers/input/touchscreen/touchwin.c | |||
@@ -60,7 +60,7 @@ struct tw { | |||
60 | }; | 60 | }; |
61 | 61 | ||
62 | static irqreturn_t tw_interrupt(struct serio *serio, | 62 | static irqreturn_t tw_interrupt(struct serio *serio, |
63 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 63 | unsigned char data, unsigned int flags) |
64 | { | 64 | { |
65 | struct tw *tw = serio_get_drvdata(serio); | 65 | struct tw *tw = serio_get_drvdata(serio); |
66 | struct input_dev *dev = tw->dev; | 66 | struct input_dev *dev = tw->dev; |
@@ -70,7 +70,6 @@ static irqreturn_t tw_interrupt(struct serio *serio, | |||
70 | tw->data[tw->idx++] = data; | 70 | tw->data[tw->idx++] = data; |
71 | /* verify length and that the two Y's are the same */ | 71 | /* verify length and that the two Y's are the same */ |
72 | if (tw->idx == TW_LENGTH && tw->data[1] == tw->data[2]) { | 72 | if (tw->idx == TW_LENGTH && tw->data[1] == tw->data[2]) { |
73 | input_regs(dev, regs); | ||
74 | input_report_abs(dev, ABS_X, tw->data[0]); | 73 | input_report_abs(dev, ABS_X, tw->data[0]); |
75 | input_report_abs(dev, ABS_Y, tw->data[1]); | 74 | input_report_abs(dev, ABS_Y, tw->data[1]); |
76 | input_report_key(dev, BTN_TOUCH, 1); | 75 | input_report_key(dev, BTN_TOUCH, 1); |