diff options
| author | Kukjin Kim <kgene.kim@samsung.com> | 2012-05-12 18:53:34 -0400 |
|---|---|---|
| committer | Kukjin Kim <kgene.kim@samsung.com> | 2012-05-12 18:53:34 -0400 |
| commit | 163ec0369be4c26e68385f6cec88d0ee38c8d8e5 (patch) | |
| tree | f3e441866f8bc1b0548e7d8eddd9548b6aedef5e /drivers/input | |
| parent | 199642bfe107c411f25fbfc16c9fd49cfef9785d (diff) | |
| parent | 99dbdd98f271899e023d52b3f4c2bf67cdd7eb56 (diff) | |
Merge branch 'next/cleanup-plat-s3c24xx' into next/cleanup-plat-s3c24xx-s5p
Diffstat (limited to 'drivers/input')
| -rw-r--r-- | drivers/input/misc/Kconfig | 3 | ||||
| -rw-r--r-- | drivers/input/misc/da9052_onkey.c | 3 | ||||
| -rw-r--r-- | drivers/input/misc/twl6040-vibra.c | 4 | ||||
| -rw-r--r-- | drivers/input/mouse/elantech.c | 10 | ||||
| -rw-r--r-- | drivers/input/mouse/gpio_mouse.c | 2 | ||||
| -rw-r--r-- | drivers/input/mouse/sentelic.c | 8 | ||||
| -rw-r--r-- | drivers/input/mouse/synaptics.c | 3 | ||||
| -rw-r--r-- | drivers/input/mouse/trackpoint.c | 14 | ||||
| -rw-r--r-- | drivers/input/touchscreen/tps6507x-ts.c | 4 |
9 files changed, 33 insertions, 18 deletions
diff --git a/drivers/input/misc/Kconfig b/drivers/input/misc/Kconfig index 2d787796bf50..7faf4a7fcaa9 100644 --- a/drivers/input/misc/Kconfig +++ b/drivers/input/misc/Kconfig | |||
| @@ -380,8 +380,7 @@ config INPUT_TWL4030_VIBRA | |||
| 380 | 380 | ||
| 381 | config INPUT_TWL6040_VIBRA | 381 | config INPUT_TWL6040_VIBRA |
| 382 | tristate "Support for TWL6040 Vibrator" | 382 | tristate "Support for TWL6040 Vibrator" |
| 383 | depends on TWL4030_CORE | 383 | depends on TWL6040_CORE |
| 384 | select TWL6040_CORE | ||
| 385 | select INPUT_FF_MEMLESS | 384 | select INPUT_FF_MEMLESS |
| 386 | help | 385 | help |
| 387 | This option enables support for TWL6040 Vibrator Driver. | 386 | This option enables support for TWL6040 Vibrator Driver. |
diff --git a/drivers/input/misc/da9052_onkey.c b/drivers/input/misc/da9052_onkey.c index 34aebb8cd080..3c843cd725fa 100644 --- a/drivers/input/misc/da9052_onkey.c +++ b/drivers/input/misc/da9052_onkey.c | |||
| @@ -95,7 +95,8 @@ static int __devinit da9052_onkey_probe(struct platform_device *pdev) | |||
| 95 | input_dev = input_allocate_device(); | 95 | input_dev = input_allocate_device(); |
| 96 | if (!onkey || !input_dev) { | 96 | if (!onkey || !input_dev) { |
| 97 | dev_err(&pdev->dev, "Failed to allocate memory\n"); | 97 | dev_err(&pdev->dev, "Failed to allocate memory\n"); |
| 98 | return -ENOMEM; | 98 | error = -ENOMEM; |
| 99 | goto err_free_mem; | ||
| 99 | } | 100 | } |
| 100 | 101 | ||
| 101 | onkey->input = input_dev; | 102 | onkey->input = input_dev; |
diff --git a/drivers/input/misc/twl6040-vibra.c b/drivers/input/misc/twl6040-vibra.c index 45874fed523a..14e94f56cb7d 100644 --- a/drivers/input/misc/twl6040-vibra.c +++ b/drivers/input/misc/twl6040-vibra.c | |||
| @@ -28,7 +28,7 @@ | |||
| 28 | #include <linux/module.h> | 28 | #include <linux/module.h> |
| 29 | #include <linux/platform_device.h> | 29 | #include <linux/platform_device.h> |
| 30 | #include <linux/workqueue.h> | 30 | #include <linux/workqueue.h> |
| 31 | #include <linux/i2c/twl.h> | 31 | #include <linux/input.h> |
| 32 | #include <linux/mfd/twl6040.h> | 32 | #include <linux/mfd/twl6040.h> |
| 33 | #include <linux/slab.h> | 33 | #include <linux/slab.h> |
| 34 | #include <linux/delay.h> | 34 | #include <linux/delay.h> |
| @@ -257,7 +257,7 @@ static SIMPLE_DEV_PM_OPS(twl6040_vibra_pm_ops, twl6040_vibra_suspend, NULL); | |||
| 257 | 257 | ||
| 258 | static int __devinit twl6040_vibra_probe(struct platform_device *pdev) | 258 | static int __devinit twl6040_vibra_probe(struct platform_device *pdev) |
| 259 | { | 259 | { |
| 260 | struct twl4030_vibra_data *pdata = pdev->dev.platform_data; | 260 | struct twl6040_vibra_data *pdata = pdev->dev.platform_data; |
| 261 | struct vibra_info *info; | 261 | struct vibra_info *info; |
| 262 | int ret; | 262 | int ret; |
| 263 | 263 | ||
diff --git a/drivers/input/mouse/elantech.c b/drivers/input/mouse/elantech.c index d2c0db159b18..479011004a11 100644 --- a/drivers/input/mouse/elantech.c +++ b/drivers/input/mouse/elantech.c | |||
| @@ -486,7 +486,6 @@ static void elantech_input_sync_v4(struct psmouse *psmouse) | |||
| 486 | unsigned char *packet = psmouse->packet; | 486 | unsigned char *packet = psmouse->packet; |
| 487 | 487 | ||
| 488 | input_report_key(dev, BTN_LEFT, packet[0] & 0x01); | 488 | input_report_key(dev, BTN_LEFT, packet[0] & 0x01); |
| 489 | input_report_key(dev, BTN_RIGHT, packet[0] & 0x02); | ||
| 490 | input_mt_report_pointer_emulation(dev, true); | 489 | input_mt_report_pointer_emulation(dev, true); |
| 491 | input_sync(dev); | 490 | input_sync(dev); |
| 492 | } | 491 | } |
| @@ -967,6 +966,7 @@ static int elantech_set_input_params(struct psmouse *psmouse) | |||
| 967 | if (elantech_set_range(psmouse, &x_min, &y_min, &x_max, &y_max, &width)) | 966 | if (elantech_set_range(psmouse, &x_min, &y_min, &x_max, &y_max, &width)) |
| 968 | return -1; | 967 | return -1; |
| 969 | 968 | ||
| 969 | __set_bit(INPUT_PROP_POINTER, dev->propbit); | ||
| 970 | __set_bit(EV_KEY, dev->evbit); | 970 | __set_bit(EV_KEY, dev->evbit); |
| 971 | __set_bit(EV_ABS, dev->evbit); | 971 | __set_bit(EV_ABS, dev->evbit); |
| 972 | __clear_bit(EV_REL, dev->evbit); | 972 | __clear_bit(EV_REL, dev->evbit); |
| @@ -1017,7 +1017,9 @@ static int elantech_set_input_params(struct psmouse *psmouse) | |||
| 1017 | */ | 1017 | */ |
| 1018 | psmouse_warn(psmouse, "couldn't query resolution data.\n"); | 1018 | psmouse_warn(psmouse, "couldn't query resolution data.\n"); |
| 1019 | } | 1019 | } |
| 1020 | 1020 | /* v4 is clickpad, with only one button. */ | |
| 1021 | __set_bit(INPUT_PROP_BUTTONPAD, dev->propbit); | ||
| 1022 | __clear_bit(BTN_RIGHT, dev->keybit); | ||
| 1021 | __set_bit(BTN_TOOL_QUADTAP, dev->keybit); | 1023 | __set_bit(BTN_TOOL_QUADTAP, dev->keybit); |
| 1022 | /* For X to recognize me as touchpad. */ | 1024 | /* For X to recognize me as touchpad. */ |
| 1023 | input_set_abs_params(dev, ABS_X, x_min, x_max, 0, 0); | 1025 | input_set_abs_params(dev, ABS_X, x_min, x_max, 0, 0); |
| @@ -1245,6 +1247,8 @@ static void elantech_disconnect(struct psmouse *psmouse) | |||
| 1245 | */ | 1247 | */ |
| 1246 | static int elantech_reconnect(struct psmouse *psmouse) | 1248 | static int elantech_reconnect(struct psmouse *psmouse) |
| 1247 | { | 1249 | { |
| 1250 | psmouse_reset(psmouse); | ||
| 1251 | |||
| 1248 | if (elantech_detect(psmouse, 0)) | 1252 | if (elantech_detect(psmouse, 0)) |
| 1249 | return -1; | 1253 | return -1; |
| 1250 | 1254 | ||
| @@ -1324,6 +1328,8 @@ int elantech_init(struct psmouse *psmouse) | |||
| 1324 | if (!etd) | 1328 | if (!etd) |
| 1325 | return -ENOMEM; | 1329 | return -ENOMEM; |
| 1326 | 1330 | ||
| 1331 | psmouse_reset(psmouse); | ||
| 1332 | |||
| 1327 | etd->parity[0] = 1; | 1333 | etd->parity[0] = 1; |
| 1328 | for (i = 1; i < 256; i++) | 1334 | for (i = 1; i < 256; i++) |
| 1329 | etd->parity[i] = etd->parity[i & (i - 1)] ^ 1; | 1335 | etd->parity[i] = etd->parity[i & (i - 1)] ^ 1; |
diff --git a/drivers/input/mouse/gpio_mouse.c b/drivers/input/mouse/gpio_mouse.c index a9ad8e1402be..39fe9b737cae 100644 --- a/drivers/input/mouse/gpio_mouse.c +++ b/drivers/input/mouse/gpio_mouse.c | |||
| @@ -12,9 +12,9 @@ | |||
| 12 | #include <linux/module.h> | 12 | #include <linux/module.h> |
| 13 | #include <linux/platform_device.h> | 13 | #include <linux/platform_device.h> |
| 14 | #include <linux/input-polldev.h> | 14 | #include <linux/input-polldev.h> |
| 15 | #include <linux/gpio.h> | ||
| 15 | #include <linux/gpio_mouse.h> | 16 | #include <linux/gpio_mouse.h> |
| 16 | 17 | ||
| 17 | #include <asm/gpio.h> | ||
| 18 | 18 | ||
| 19 | /* | 19 | /* |
| 20 | * Timer function which is run every scan_ms ms when the device is opened. | 20 | * Timer function which is run every scan_ms ms when the device is opened. |
diff --git a/drivers/input/mouse/sentelic.c b/drivers/input/mouse/sentelic.c index a977bfaa6821..661a0ca3b3d6 100644 --- a/drivers/input/mouse/sentelic.c +++ b/drivers/input/mouse/sentelic.c | |||
| @@ -741,6 +741,14 @@ static psmouse_ret_t fsp_process_byte(struct psmouse *psmouse) | |||
| 741 | } | 741 | } |
| 742 | } else { | 742 | } else { |
| 743 | /* SFAC packet */ | 743 | /* SFAC packet */ |
| 744 | if ((packet[0] & (FSP_PB0_LBTN|FSP_PB0_PHY_BTN)) == | ||
| 745 | FSP_PB0_LBTN) { | ||
| 746 | /* On-pad click in SFAC mode should be handled | ||
| 747 | * by userspace. On-pad clicks in MFMC mode | ||
| 748 | * are real clickpad clicks, and not ignored. | ||
| 749 | */ | ||
| 750 | packet[0] &= ~FSP_PB0_LBTN; | ||
| 751 | } | ||
| 744 | 752 | ||
| 745 | /* no multi-finger information */ | 753 | /* no multi-finger information */ |
| 746 | ad->last_mt_fgr = 0; | 754 | ad->last_mt_fgr = 0; |
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c index 8081a0a5d602..a4b14a41cbf4 100644 --- a/drivers/input/mouse/synaptics.c +++ b/drivers/input/mouse/synaptics.c | |||
| @@ -274,7 +274,8 @@ static int synaptics_set_advanced_gesture_mode(struct psmouse *psmouse) | |||
| 274 | static unsigned char param = 0xc8; | 274 | static unsigned char param = 0xc8; |
| 275 | struct synaptics_data *priv = psmouse->private; | 275 | struct synaptics_data *priv = psmouse->private; |
| 276 | 276 | ||
| 277 | if (!SYN_CAP_ADV_GESTURE(priv->ext_cap_0c)) | 277 | if (!(SYN_CAP_ADV_GESTURE(priv->ext_cap_0c) || |
| 278 | SYN_CAP_IMAGE_SENSOR(priv->ext_cap_0c))) | ||
| 278 | return 0; | 279 | return 0; |
| 279 | 280 | ||
| 280 | if (psmouse_sliced_command(psmouse, SYN_QUE_MODEL)) | 281 | if (psmouse_sliced_command(psmouse, SYN_QUE_MODEL)) |
diff --git a/drivers/input/mouse/trackpoint.c b/drivers/input/mouse/trackpoint.c index 22b218018137..f3102494237d 100644 --- a/drivers/input/mouse/trackpoint.c +++ b/drivers/input/mouse/trackpoint.c | |||
| @@ -304,7 +304,7 @@ int trackpoint_detect(struct psmouse *psmouse, bool set_properties) | |||
| 304 | return 0; | 304 | return 0; |
| 305 | 305 | ||
| 306 | if (trackpoint_read(&psmouse->ps2dev, TP_EXT_BTN, &button_info)) { | 306 | if (trackpoint_read(&psmouse->ps2dev, TP_EXT_BTN, &button_info)) { |
| 307 | printk(KERN_WARNING "trackpoint.c: failed to get extended button data\n"); | 307 | psmouse_warn(psmouse, "failed to get extended button data\n"); |
| 308 | button_info = 0; | 308 | button_info = 0; |
| 309 | } | 309 | } |
| 310 | 310 | ||
| @@ -326,16 +326,18 @@ int trackpoint_detect(struct psmouse *psmouse, bool set_properties) | |||
| 326 | 326 | ||
| 327 | error = sysfs_create_group(&ps2dev->serio->dev.kobj, &trackpoint_attr_group); | 327 | error = sysfs_create_group(&ps2dev->serio->dev.kobj, &trackpoint_attr_group); |
| 328 | if (error) { | 328 | if (error) { |
| 329 | printk(KERN_ERR | 329 | psmouse_err(psmouse, |
| 330 | "trackpoint.c: failed to create sysfs attributes, error: %d\n", | 330 | "failed to create sysfs attributes, error: %d\n", |
| 331 | error); | 331 | error); |
| 332 | kfree(psmouse->private); | 332 | kfree(psmouse->private); |
| 333 | psmouse->private = NULL; | 333 | psmouse->private = NULL; |
| 334 | return -1; | 334 | return -1; |
| 335 | } | 335 | } |
| 336 | 336 | ||
| 337 | printk(KERN_INFO "IBM TrackPoint firmware: 0x%02x, buttons: %d/%d\n", | 337 | psmouse_info(psmouse, |
| 338 | firmware_id, (button_info & 0xf0) >> 4, button_info & 0x0f); | 338 | "IBM TrackPoint firmware: 0x%02x, buttons: %d/%d\n", |
| 339 | firmware_id, | ||
| 340 | (button_info & 0xf0) >> 4, button_info & 0x0f); | ||
| 339 | 341 | ||
| 340 | return 0; | 342 | return 0; |
| 341 | } | 343 | } |
diff --git a/drivers/input/touchscreen/tps6507x-ts.c b/drivers/input/touchscreen/tps6507x-ts.c index 6c6f6d8ea9b4..f7eda3d00fad 100644 --- a/drivers/input/touchscreen/tps6507x-ts.c +++ b/drivers/input/touchscreen/tps6507x-ts.c | |||
| @@ -1,6 +1,4 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * drivers/input/touchscreen/tps6507x_ts.c | ||
| 3 | * | ||
| 4 | * Touchscreen driver for the tps6507x chip. | 2 | * Touchscreen driver for the tps6507x chip. |
| 5 | * | 3 | * |
| 6 | * Copyright (c) 2009 RidgeRun (todd.fischer@ridgerun.com) | 4 | * Copyright (c) 2009 RidgeRun (todd.fischer@ridgerun.com) |
| @@ -376,4 +374,4 @@ module_platform_driver(tps6507x_ts_driver); | |||
| 376 | MODULE_AUTHOR("Todd Fischer <todd.fischer@ridgerun.com>"); | 374 | MODULE_AUTHOR("Todd Fischer <todd.fischer@ridgerun.com>"); |
| 377 | MODULE_DESCRIPTION("TPS6507x - TouchScreen driver"); | 375 | MODULE_DESCRIPTION("TPS6507x - TouchScreen driver"); |
| 378 | MODULE_LICENSE("GPL v2"); | 376 | MODULE_LICENSE("GPL v2"); |
| 379 | MODULE_ALIAS("platform:tps6507x-tsc"); | 377 | MODULE_ALIAS("platform:tps6507x-ts"); |
