diff options
Diffstat (limited to 'drivers/input/mouse')
| -rw-r--r-- | drivers/input/mouse/alps.c | 4 | ||||
| -rw-r--r-- | drivers/input/mouse/psmouse-base.c | 7 | ||||
| -rw-r--r-- | drivers/input/mouse/synaptics.c | 39 |
3 files changed, 13 insertions, 37 deletions
diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c index 1f85a9718c89..42a9f7f6f8cb 100644 --- a/drivers/input/mouse/alps.c +++ b/drivers/input/mouse/alps.c | |||
| @@ -341,6 +341,8 @@ static int alps_reconnect(struct psmouse *psmouse) | |||
| 341 | unsigned char param[4]; | 341 | unsigned char param[4]; |
| 342 | int version; | 342 | int version; |
| 343 | 343 | ||
| 344 | psmouse_reset(psmouse); | ||
| 345 | |||
| 344 | if (!(priv->i = alps_get_model(psmouse, &version))) | 346 | if (!(priv->i = alps_get_model(psmouse, &version))) |
| 345 | return -1; | 347 | return -1; |
| 346 | 348 | ||
| @@ -395,7 +397,7 @@ int alps_init(struct psmouse *psmouse) | |||
| 395 | } | 397 | } |
| 396 | 398 | ||
| 397 | if (param[0] & 0x04) { | 399 | if (param[0] & 0x04) { |
| 398 | printk(KERN_INFO " Enabling hardware tapping\n"); | 400 | printk(KERN_INFO "alps.c: Enabling hardware tapping\n"); |
| 399 | if (alps_tap_mode(psmouse, 1)) | 401 | if (alps_tap_mode(psmouse, 1)) |
| 400 | printk(KERN_WARNING "alps.c: Failed to enable hardware tapping\n"); | 402 | printk(KERN_WARNING "alps.c: Failed to enable hardware tapping\n"); |
| 401 | } | 403 | } |
diff --git a/drivers/input/mouse/psmouse-base.c b/drivers/input/mouse/psmouse-base.c index cd8509549eac..019034b21a0b 100644 --- a/drivers/input/mouse/psmouse-base.c +++ b/drivers/input/mouse/psmouse-base.c | |||
| @@ -518,13 +518,16 @@ static int psmouse_probe(struct psmouse *psmouse) | |||
| 518 | /* | 518 | /* |
| 519 | * First, we check if it's a mouse. It should send 0x00 or 0x03 | 519 | * First, we check if it's a mouse. It should send 0x00 or 0x03 |
| 520 | * in case of an IntelliMouse in 4-byte mode or 0x04 for IM Explorer. | 520 | * in case of an IntelliMouse in 4-byte mode or 0x04 for IM Explorer. |
| 521 | * Sunrex K8561 IR Keyboard/Mouse reports 0xff on second and subsequent | ||
| 522 | * ID queries, probably due to a firmware bug. | ||
| 521 | */ | 523 | */ |
| 522 | 524 | ||
| 523 | param[0] = 0xa5; | 525 | param[0] = 0xa5; |
| 524 | if (ps2_command(ps2dev, param, PSMOUSE_CMD_GETID)) | 526 | if (ps2_command(ps2dev, param, PSMOUSE_CMD_GETID)) |
| 525 | return -1; | 527 | return -1; |
| 526 | 528 | ||
| 527 | if (param[0] != 0x00 && param[0] != 0x03 && param[0] != 0x04) | 529 | if (param[0] != 0x00 && param[0] != 0x03 && |
| 530 | param[0] != 0x04 && param[0] != 0xff) | ||
| 528 | return -1; | 531 | return -1; |
| 529 | 532 | ||
| 530 | /* | 533 | /* |
| @@ -972,7 +975,7 @@ static int psmouse_set_maxproto(const char *val, struct kernel_param *kp) | |||
| 972 | return -EINVAL; | 975 | return -EINVAL; |
| 973 | 976 | ||
| 974 | if (!strncmp(val, "any", 3)) { | 977 | if (!strncmp(val, "any", 3)) { |
| 975 | *((unsigned int *)kp->arg) = -1UL; | 978 | *((unsigned int *)kp->arg) = -1U; |
| 976 | return 0; | 979 | return 0; |
| 977 | } | 980 | } |
| 978 | 981 | ||
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c index 69832f8fb720..36c721227b68 100644 --- a/drivers/input/mouse/synaptics.c +++ b/drivers/input/mouse/synaptics.c | |||
| @@ -143,39 +143,6 @@ static int synaptics_identify(struct psmouse *psmouse) | |||
| 143 | return -1; | 143 | return -1; |
| 144 | } | 144 | } |
| 145 | 145 | ||
| 146 | static void print_ident(struct synaptics_data *priv) | ||
| 147 | { | ||
| 148 | printk(KERN_INFO "Synaptics Touchpad, model: %ld\n", SYN_ID_MODEL(priv->identity)); | ||
| 149 | printk(KERN_INFO " Firmware: %ld.%ld\n", SYN_ID_MAJOR(priv->identity), | ||
| 150 | SYN_ID_MINOR(priv->identity)); | ||
| 151 | if (SYN_MODEL_ROT180(priv->model_id)) | ||
| 152 | printk(KERN_INFO " 180 degree mounted touchpad\n"); | ||
| 153 | if (SYN_MODEL_PORTRAIT(priv->model_id)) | ||
| 154 | printk(KERN_INFO " portrait touchpad\n"); | ||
| 155 | printk(KERN_INFO " Sensor: %ld\n", SYN_MODEL_SENSOR(priv->model_id)); | ||
| 156 | if (SYN_MODEL_NEWABS(priv->model_id)) | ||
| 157 | printk(KERN_INFO " new absolute packet format\n"); | ||
| 158 | if (SYN_MODEL_PEN(priv->model_id)) | ||
| 159 | printk(KERN_INFO " pen detection\n"); | ||
| 160 | |||
| 161 | if (SYN_CAP_EXTENDED(priv->capabilities)) { | ||
| 162 | printk(KERN_INFO " Touchpad has extended capability bits\n"); | ||
| 163 | if (SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap)) | ||
| 164 | printk(KERN_INFO " -> %d multi-buttons, i.e. besides standard buttons\n", | ||
| 165 | (int)(SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap))); | ||
| 166 | if (SYN_CAP_MIDDLE_BUTTON(priv->capabilities)) | ||
| 167 | printk(KERN_INFO " -> middle button\n"); | ||
| 168 | if (SYN_CAP_FOUR_BUTTON(priv->capabilities)) | ||
| 169 | printk(KERN_INFO " -> four buttons\n"); | ||
| 170 | if (SYN_CAP_MULTIFINGER(priv->capabilities)) | ||
| 171 | printk(KERN_INFO " -> multifinger detection\n"); | ||
| 172 | if (SYN_CAP_PALMDETECT(priv->capabilities)) | ||
| 173 | printk(KERN_INFO " -> palm detection\n"); | ||
| 174 | if (SYN_CAP_PASS_THROUGH(priv->capabilities)) | ||
| 175 | printk(KERN_INFO " -> pass-through port\n"); | ||
| 176 | } | ||
| 177 | } | ||
| 178 | |||
| 179 | static int synaptics_query_hardware(struct psmouse *psmouse) | 146 | static int synaptics_query_hardware(struct psmouse *psmouse) |
| 180 | { | 147 | { |
| 181 | int retries = 0; | 148 | int retries = 0; |
| @@ -666,7 +633,11 @@ int synaptics_init(struct psmouse *psmouse) | |||
| 666 | 633 | ||
| 667 | priv->pkt_type = SYN_MODEL_NEWABS(priv->model_id) ? SYN_NEWABS : SYN_OLDABS; | 634 | priv->pkt_type = SYN_MODEL_NEWABS(priv->model_id) ? SYN_NEWABS : SYN_OLDABS; |
| 668 | 635 | ||
| 669 | print_ident(priv); | 636 | printk(KERN_INFO "Synaptics Touchpad, model: %ld, fw: %ld.%ld, id: %#lx, caps: %#lx/%#lx\n", |
| 637 | SYN_ID_MODEL(priv->identity), | ||
| 638 | SYN_ID_MAJOR(priv->identity), SYN_ID_MINOR(priv->identity), | ||
| 639 | priv->model_id, priv->capabilities, priv->ext_cap); | ||
| 640 | |||
| 670 | set_input_params(&psmouse->dev, priv); | 641 | set_input_params(&psmouse->dev, priv); |
| 671 | 642 | ||
| 672 | psmouse->protocol_handler = synaptics_process_byte; | 643 | psmouse->protocol_handler = synaptics_process_byte; |
