diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-15 16:41:39 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-15 16:41:39 -0400 |
commit | f2e1d89f9b349b3cd914b7c6ec6368632f4ad048 (patch) | |
tree | 5b0042924a9f9c8b3309c0be880f51795916fc28 /drivers/input/mouse | |
parent | 85ffdd28be04c324349dfc7c9de3d4342c885c3f (diff) | |
parent | 82ba56c273911f7eda79849cfa0fc2d2e5a3b75b (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (40 commits)
Input: use full RCU API
Input: remove tsdev interface
Input: add support for Blackfin BF54x Keypad controller
Input: appletouch - another fix for idle reset logic
HWMON: hdaps - switch to using input-polldev
Input: add support for SEGA Dreamcast keyboard
Input: omap-keyboard - don't pretend we support changing keymap
Input: lifebook - fix X and Y axis range
Input: usbtouchscreen - add support for GeneralTouch devices
Input: fix open count handling in input interfaces
Input: keyboard - add CapsShift lock
Input: adbhid - produce all CapsLock key events
Input: ALPS - add signature for ThinkPad R61
Input: jornada720_kbd - send MSC_SCAN events
Input: add support for the HP Jornada 7xx (710/720/728) touchscreen
Input: add support for HP Jornada 7xx onboard keyboard
Input: add support for HP Jornada onboard keyboard (HP6XX)
Input: ucb1400_ts - use schedule_timeout_uninterruptible
Input: xpad - fix dependancy on LEDS class
Input: auto-select INPUT for MAC_EMUMOUSEBTN option
...
Resolved conflicts manually in drivers/hwmon/applesmc.c: converting from
a class device to a device and converting to use input-polldev created a
few apparently trivial clashes..
Diffstat (limited to 'drivers/input/mouse')
-rw-r--r-- | drivers/input/mouse/alps.c | 2 | ||||
-rw-r--r-- | drivers/input/mouse/appletouch.c | 15 | ||||
-rw-r--r-- | drivers/input/mouse/lifebook.c | 10 | ||||
-rw-r--r-- | drivers/input/mouse/psmouse-base.c | 5 |
4 files changed, 24 insertions, 8 deletions
diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c index 2c5f11a4f6b4..64d70a9b714c 100644 --- a/drivers/input/mouse/alps.c +++ b/drivers/input/mouse/alps.c | |||
@@ -48,11 +48,13 @@ static const struct alps_model_info alps_model_data[] = { | |||
48 | { { 0x63, 0x02, 0x50 }, 0xef, 0xef, ALPS_FW_BK_1 }, /* NEC Versa L320 */ | 48 | { { 0x63, 0x02, 0x50 }, 0xef, 0xef, ALPS_FW_BK_1 }, /* NEC Versa L320 */ |
49 | { { 0x63, 0x02, 0x64 }, 0xf8, 0xf8, 0 }, | 49 | { { 0x63, 0x02, 0x64 }, 0xf8, 0xf8, 0 }, |
50 | { { 0x63, 0x03, 0xc8 }, 0xf8, 0xf8, ALPS_PASS }, /* Dell Latitude D800 */ | 50 | { { 0x63, 0x03, 0xc8 }, 0xf8, 0xf8, ALPS_PASS }, /* Dell Latitude D800 */ |
51 | { { 0x73, 0x00, 0x0a }, 0xf8, 0xf8, ALPS_DUALPOINT }, /* ThinkPad R61 8918-5QG */ | ||
51 | { { 0x73, 0x02, 0x0a }, 0xf8, 0xf8, 0 }, | 52 | { { 0x73, 0x02, 0x0a }, 0xf8, 0xf8, 0 }, |
52 | { { 0x73, 0x02, 0x14 }, 0xf8, 0xf8, ALPS_FW_BK_2 }, /* Ahtec Laptop */ | 53 | { { 0x73, 0x02, 0x14 }, 0xf8, 0xf8, ALPS_FW_BK_2 }, /* Ahtec Laptop */ |
53 | { { 0x20, 0x02, 0x0e }, 0xf8, 0xf8, ALPS_PASS | ALPS_DUALPOINT }, /* XXX */ | 54 | { { 0x20, 0x02, 0x0e }, 0xf8, 0xf8, ALPS_PASS | ALPS_DUALPOINT }, /* XXX */ |
54 | { { 0x22, 0x02, 0x0a }, 0xf8, 0xf8, ALPS_PASS | ALPS_DUALPOINT }, | 55 | { { 0x22, 0x02, 0x0a }, 0xf8, 0xf8, ALPS_PASS | ALPS_DUALPOINT }, |
55 | { { 0x22, 0x02, 0x14 }, 0xff, 0xff, ALPS_PASS | ALPS_DUALPOINT }, /* Dell Latitude D600 */ | 56 | { { 0x22, 0x02, 0x14 }, 0xff, 0xff, ALPS_PASS | ALPS_DUALPOINT }, /* Dell Latitude D600 */ |
57 | { { 0x73, 0x02, 0x50 }, 0xcf, 0xff, ALPS_FW_BK_1 } /* Dell Vostro 1400 */ | ||
56 | }; | 58 | }; |
57 | 59 | ||
58 | /* | 60 | /* |
diff --git a/drivers/input/mouse/appletouch.c b/drivers/input/mouse/appletouch.c index a1804bfdbb8c..0117817bf538 100644 --- a/drivers/input/mouse/appletouch.c +++ b/drivers/input/mouse/appletouch.c | |||
@@ -502,18 +502,23 @@ static void atp_complete(struct urb* urb) | |||
502 | 502 | ||
503 | /* reset the accumulator on release */ | 503 | /* reset the accumulator on release */ |
504 | memset(dev->xy_acc, 0, sizeof(dev->xy_acc)); | 504 | memset(dev->xy_acc, 0, sizeof(dev->xy_acc)); |
505 | } | ||
506 | |||
507 | /* Geyser 3 will continue to send packets continually after | ||
508 | the first touch unless reinitialised. Do so if it's been | ||
509 | idle for a while in order to avoid waking the kernel up | ||
510 | several hundred times a second */ | ||
505 | 511 | ||
506 | /* Geyser 3 will continue to send packets continually after | 512 | if (atp_is_geyser_3(dev)) { |
507 | the first touch unless reinitialised. Do so if it's been | 513 | if (!x && !y && !key) { |
508 | idle for a while in order to avoid waking the kernel up | ||
509 | several hundred times a second */ | ||
510 | if (!key && atp_is_geyser_3(dev)) { | ||
511 | dev->idlecount++; | 514 | dev->idlecount++; |
512 | if (dev->idlecount == 10) { | 515 | if (dev->idlecount == 10) { |
513 | dev->valid = 0; | 516 | dev->valid = 0; |
514 | schedule_work(&dev->work); | 517 | schedule_work(&dev->work); |
515 | } | 518 | } |
516 | } | 519 | } |
520 | else | ||
521 | dev->idlecount = 0; | ||
517 | } | 522 | } |
518 | 523 | ||
519 | input_report_key(dev->input, BTN_LEFT, key); | 524 | input_report_key(dev->input, BTN_LEFT, key); |
diff --git a/drivers/input/mouse/lifebook.c b/drivers/input/mouse/lifebook.c index 608674d0be8b..d7de4c53b3d8 100644 --- a/drivers/input/mouse/lifebook.c +++ b/drivers/input/mouse/lifebook.c | |||
@@ -97,6 +97,14 @@ static const struct dmi_system_id lifebook_dmi_table[] = { | |||
97 | .callback = lifebook_set_6byte_proto, | 97 | .callback = lifebook_set_6byte_proto, |
98 | }, | 98 | }, |
99 | { | 99 | { |
100 | .ident = "CF-72", | ||
101 | .matches = { | ||
102 | DMI_MATCH(DMI_PRODUCT_NAME, "CF-72"), | ||
103 | }, | ||
104 | .callback = lifebook_set_serio_phys, | ||
105 | .driver_data = "isa0060/serio3", | ||
106 | }, | ||
107 | { | ||
100 | .ident = "Lifebook B142", | 108 | .ident = "Lifebook B142", |
101 | .matches = { | 109 | .matches = { |
102 | DMI_MATCH(DMI_PRODUCT_NAME, "LifeBook B142"), | 110 | DMI_MATCH(DMI_PRODUCT_NAME, "LifeBook B142"), |
@@ -282,7 +290,7 @@ static int lifebook_create_relative_device(struct psmouse *psmouse) | |||
282 | int lifebook_init(struct psmouse *psmouse) | 290 | int lifebook_init(struct psmouse *psmouse) |
283 | { | 291 | { |
284 | struct input_dev *dev1 = psmouse->dev; | 292 | struct input_dev *dev1 = psmouse->dev; |
285 | int max_coord = lifebook_use_6byte_proto ? 1024 : 4096; | 293 | int max_coord = lifebook_use_6byte_proto ? 4096 : 1024; |
286 | 294 | ||
287 | if (lifebook_absolute_mode(psmouse)) | 295 | if (lifebook_absolute_mode(psmouse)) |
288 | return -1; | 296 | return -1; |
diff --git a/drivers/input/mouse/psmouse-base.c b/drivers/input/mouse/psmouse-base.c index b9f0fb2530e2..073525756532 100644 --- a/drivers/input/mouse/psmouse-base.c +++ b/drivers/input/mouse/psmouse-base.c | |||
@@ -648,9 +648,10 @@ static int psmouse_extensions(struct psmouse *psmouse, | |||
648 | 648 | ||
649 | /* | 649 | /* |
650 | * Reset to defaults in case the device got confused by extended | 650 | * Reset to defaults in case the device got confused by extended |
651 | * protocol probes. Note that we do full reset becuase some mice | 651 | * protocol probes. Note that we follow up with full reset because |
652 | * put themselves to sleep when see PSMOUSE_RESET_DIS. | 652 | * some mice put themselves to sleep when they see PSMOUSE_RESET_DIS. |
653 | */ | 653 | */ |
654 | ps2_command(&psmouse->ps2dev, NULL, PSMOUSE_CMD_RESET_DIS); | ||
654 | psmouse_reset(psmouse); | 655 | psmouse_reset(psmouse); |
655 | 656 | ||
656 | if (max_proto >= PSMOUSE_IMEX && im_explorer_detect(psmouse, set_properties) == 0) | 657 | if (max_proto >= PSMOUSE_IMEX && im_explorer_detect(psmouse, set_properties) == 0) |