diff options
Diffstat (limited to 'drivers/misc/ibmasm')
-rw-r--r-- | drivers/misc/ibmasm/ibmasm.h | 4 | ||||
-rw-r--r-- | drivers/misc/ibmasm/lowlevel.c | 4 | ||||
-rw-r--r-- | drivers/misc/ibmasm/remote.c | 14 |
3 files changed, 9 insertions, 13 deletions
diff --git a/drivers/misc/ibmasm/ibmasm.h b/drivers/misc/ibmasm/ibmasm.h index 634d538ccd14..48d5abebfc30 100644 --- a/drivers/misc/ibmasm/ibmasm.h +++ b/drivers/misc/ibmasm/ibmasm.h | |||
@@ -196,10 +196,10 @@ extern int ibmasm_send_os_state(struct service_processor *sp, int os_state); | |||
196 | 196 | ||
197 | /* low level message processing */ | 197 | /* low level message processing */ |
198 | extern int ibmasm_send_i2o_message(struct service_processor *sp); | 198 | extern int ibmasm_send_i2o_message(struct service_processor *sp); |
199 | extern irqreturn_t ibmasm_interrupt_handler(int irq, void * dev_id, struct pt_regs *regs); | 199 | extern irqreturn_t ibmasm_interrupt_handler(int irq, void * dev_id); |
200 | 200 | ||
201 | /* remote console */ | 201 | /* remote console */ |
202 | extern void ibmasm_handle_mouse_interrupt(struct service_processor *sp, struct pt_regs *regs); | 202 | extern void ibmasm_handle_mouse_interrupt(struct service_processor *sp); |
203 | extern int ibmasm_init_remote_input_dev(struct service_processor *sp); | 203 | extern int ibmasm_init_remote_input_dev(struct service_processor *sp); |
204 | extern void ibmasm_free_remote_input_dev(struct service_processor *sp); | 204 | extern void ibmasm_free_remote_input_dev(struct service_processor *sp); |
205 | 205 | ||
diff --git a/drivers/misc/ibmasm/lowlevel.c b/drivers/misc/ibmasm/lowlevel.c index 47949a2c7e94..a3c589b7cbfa 100644 --- a/drivers/misc/ibmasm/lowlevel.c +++ b/drivers/misc/ibmasm/lowlevel.c | |||
@@ -54,7 +54,7 @@ int ibmasm_send_i2o_message(struct service_processor *sp) | |||
54 | return 0; | 54 | return 0; |
55 | } | 55 | } |
56 | 56 | ||
57 | irqreturn_t ibmasm_interrupt_handler(int irq, void * dev_id, struct pt_regs *regs) | 57 | irqreturn_t ibmasm_interrupt_handler(int irq, void * dev_id) |
58 | { | 58 | { |
59 | u32 mfa; | 59 | u32 mfa; |
60 | struct service_processor *sp = (struct service_processor *)dev_id; | 60 | struct service_processor *sp = (struct service_processor *)dev_id; |
@@ -67,7 +67,7 @@ irqreturn_t ibmasm_interrupt_handler(int irq, void * dev_id, struct pt_regs *reg | |||
67 | dbg("respond to interrupt at %s\n", get_timestamp(tsbuf)); | 67 | dbg("respond to interrupt at %s\n", get_timestamp(tsbuf)); |
68 | 68 | ||
69 | if (mouse_interrupt_pending(sp)) { | 69 | if (mouse_interrupt_pending(sp)) { |
70 | ibmasm_handle_mouse_interrupt(sp, regs); | 70 | ibmasm_handle_mouse_interrupt(sp); |
71 | clear_mouse_interrupt(sp); | 71 | clear_mouse_interrupt(sp); |
72 | } | 72 | } |
73 | 73 | ||
diff --git a/drivers/misc/ibmasm/remote.c b/drivers/misc/ibmasm/remote.c index 0f9e3aa34d07..a40fda6c402c 100644 --- a/drivers/misc/ibmasm/remote.c +++ b/drivers/misc/ibmasm/remote.c | |||
@@ -158,12 +158,10 @@ static void print_input(struct remote_input *input) | |||
158 | } | 158 | } |
159 | } | 159 | } |
160 | 160 | ||
161 | static void send_mouse_event(struct input_dev *dev, struct pt_regs *regs, | 161 | static void send_mouse_event(struct input_dev *dev, struct remote_input *input) |
162 | struct remote_input *input) | ||
163 | { | 162 | { |
164 | unsigned char buttons = input->mouse_buttons; | 163 | unsigned char buttons = input->mouse_buttons; |
165 | 164 | ||
166 | input_regs(dev, regs); | ||
167 | input_report_abs(dev, ABS_X, input->data.mouse.x); | 165 | input_report_abs(dev, ABS_X, input->data.mouse.x); |
168 | input_report_abs(dev, ABS_Y, input->data.mouse.y); | 166 | input_report_abs(dev, ABS_Y, input->data.mouse.y); |
169 | input_report_key(dev, BTN_LEFT, buttons & REMOTE_BUTTON_LEFT); | 167 | input_report_key(dev, BTN_LEFT, buttons & REMOTE_BUTTON_LEFT); |
@@ -172,7 +170,7 @@ static void send_mouse_event(struct input_dev *dev, struct pt_regs *regs, | |||
172 | input_sync(dev); | 170 | input_sync(dev); |
173 | } | 171 | } |
174 | 172 | ||
175 | static void send_keyboard_event(struct input_dev *dev, struct pt_regs *regs, | 173 | static void send_keyboard_event(struct input_dev *dev, |
176 | struct remote_input *input) | 174 | struct remote_input *input) |
177 | { | 175 | { |
178 | unsigned int key; | 176 | unsigned int key; |
@@ -182,13 +180,11 @@ static void send_keyboard_event(struct input_dev *dev, struct pt_regs *regs, | |||
182 | key = xlate_high[code & 0xff]; | 180 | key = xlate_high[code & 0xff]; |
183 | else | 181 | else |
184 | key = xlate[code]; | 182 | key = xlate[code]; |
185 | input_regs(dev, regs); | ||
186 | input_report_key(dev, key, (input->data.keyboard.key_down) ? 1 : 0); | 183 | input_report_key(dev, key, (input->data.keyboard.key_down) ? 1 : 0); |
187 | input_sync(dev); | 184 | input_sync(dev); |
188 | } | 185 | } |
189 | 186 | ||
190 | void ibmasm_handle_mouse_interrupt(struct service_processor *sp, | 187 | void ibmasm_handle_mouse_interrupt(struct service_processor *sp) |
191 | struct pt_regs *regs) | ||
192 | { | 188 | { |
193 | unsigned long reader; | 189 | unsigned long reader; |
194 | unsigned long writer; | 190 | unsigned long writer; |
@@ -203,9 +199,9 @@ void ibmasm_handle_mouse_interrupt(struct service_processor *sp, | |||
203 | 199 | ||
204 | print_input(&input); | 200 | print_input(&input); |
205 | if (input.type == INPUT_TYPE_MOUSE) { | 201 | if (input.type == INPUT_TYPE_MOUSE) { |
206 | send_mouse_event(sp->remote.mouse_dev, regs, &input); | 202 | send_mouse_event(sp->remote.mouse_dev, &input); |
207 | } else if (input.type == INPUT_TYPE_KEYBOARD) { | 203 | } else if (input.type == INPUT_TYPE_KEYBOARD) { |
208 | send_keyboard_event(sp->remote.keybd_dev, regs, &input); | 204 | send_keyboard_event(sp->remote.keybd_dev, &input); |
209 | } else | 205 | } else |
210 | break; | 206 | break; |
211 | 207 | ||