- 08 6月, 2014 1 次提交
-
-
由 Hans de Goede 提交于
At least the Dell Vostro 5470 elantech *clickpad* reports right button clicks when clicked in the right bottom area: https://bugzilla.redhat.com/show_bug.cgi?id=1103528 This is different from how (elantech) clickpads normally operate, normally no matter where the user clicks on the pad the pad always reports a left button event, since there is only 1 hardware button beneath the path. It looks like Dell has put 2 buttons under the pad, one under each bottom corner, causing this. Since this however still clearly is a real clickpad hardware-wise, we still want to report it as such to userspace, so that things like finger movement in the bottom area can be properly ignored as it should be on clickpads. So deal with this weirdness by simply mapping a right click to a left click on elantech clickpads. As an added advantage this is something which we can simply do on all elantech clickpads, so no need to add special quirks for this weird model. Reported-and-tested-by: NElder Marco <eldermarco@gmail.com> Cc: stable@vger.kernel.org Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 15 5月, 2014 1 次提交
-
-
由 Daniele Forsi 提交于
s/Logictech/Logitech/ Signed-off-by: NDaniele Forsi <dforsi@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 06 5月, 2014 1 次提交
-
-
由 Hans de Goede 提交于
The hw_version 3 Elantech touchpad on the Gigabyte U2442 does not accept 0x0b as initialization value for r10, this stand-alone version of the driver: http://planet76.com/drivers/elantech/psmouse-elantech-v6.tar.bz2 Uses 0x03 which does work, so this means not setting bit 3 of r10 which sets: "Enable Real H/W Resolution In Absolute mode" Which will result in half the x and y resolution we get with that bit set, so simply not setting it everywhere is not a solution. We've been unable to find a way to identify touchpads where setting the bit will fail, so this patch uses a dmi based blacklist for this. https://bugzilla.kernel.org/show_bug.cgi?id=61151 Cc: stable@vger.kernel.org Reported-by: NPhilipp Wolfer <ph.wolfer@gmail.com> Tested-by: NPhilipp Wolfer <ph.wolfer@gmail.com> Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 24 4月, 2014 1 次提交
-
-
由 Hans de Goede 提交于
Cc: stable@vger.kernel.org Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 23 4月, 2014 1 次提交
-
-
由 Jordan Rife 提交于
Newer elantech touchpads are not recognized by the current driver, since it fails to detect their firmware version number. This prevents more advanced touchpad features from being usable such as two-finger scrolling. This patch allows newer touchpads to be detected and be fully functional. Tested on Sony Vaio SVF13N17PXB. Signed-off-by: NJordan Rife <jrife0@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 20 4月, 2014 2 次提交
-
-
由 Hans de Goede 提交于
We expect that all the Haswell series will need such quirks, sigh. The T431s seems to be T430 hardware in a T440s case, using the T440s touchpad, with the same min/max issue. The X1 Carbon 3rd generation name says 2nd while it is a 3rd generation. The X1 and T431s share a PnPID with the T540p, but the reported ranges are closer to those of the T440s. HdG: Squashed 5 quirk patches into one. T431s + L440 + L540 are written by me, S1 Yoga and X1 are written by Benjamin Tissoires. Hdg: Standardized S1 Yoga and X1 values, Yoga uses the same touchpad as the X240, X1 uses the same touchpad as the T440. Cc: stable@vger.kernel.org Signed-off-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Hans de Goede 提交于
Check PNP ID of the PS/2 AUX port and report INPUT_PROP_TOPBUTTONPAD property for for touchpads with top button areas. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 31 3月, 2014 2 次提交
-
-
由 Clinton Sprain 提交于
Addresses issues related to when a second finger enters or leaves the field, causing the cursor to jump or the page to scroll unexpectedly; now, we discard any movement change that happens at the exact moment we detect a change in the number of fingers touching the trackpad. This doesn't completely resolve the issue but does greatly mitigate it. Signed-off-by: NClinton Sprain <clintonsprain@gmail.com> Reviewed-by: NHenrik Rydberg <rydberg@euromail.se> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Clinton Sprain 提交于
Use smoothed version of sensor array data to calculate movement and add weight to prior values when calculating average. This gives more granular and more predictable movement. Signed-off-by: NClinton Sprain <clintonsprain@gmail.com> Reviewed-by: NHenrik Rydberg <rydberg@euromail.se> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 29 3月, 2014 2 次提交
-
-
由 Hans de Goede 提交于
This extends Benjamin Tissoires manual min/max quirk table with support for the ThinkPad X240. Cc: stable@vger.kernel.org Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Benjamin Tissoires 提交于
The new Lenovo Haswell series (-40's) contains a new Synaptics touchpad. However, these new Synaptics devices report bad axis ranges. Under Windows, it is not a problem because the Windows driver uses RMI4 over SMBus to talk to the device. Under Linux, we are using the PS/2 fallback interface and it occurs the reported ranges are wrong. Of course, it would be too easy to have only one range for the whole series, each touchpad seems to be calibrated in a different way. We can not use SMBus to get the actual range because I suspect the firmware will switch into the SMBus mode and stop talking through PS/2 (this is the case for hybrid HID over I2C / PS/2 Synaptics touchpads). So as a temporary solution (until RMI4 land into upstream), start a new list of quirks with the min/max manually set. Signed-off-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com> CC: stable@vger.kernel.org Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 28 3月, 2014 1 次提交
-
-
由 Clinton Sprain 提交于
Let's dial back the default fuzz setting for most devices using this driver, based on values from user feedback from forums and bug reports. Signed-off-by: NClinton Sprain <clintonsprain@gmail.com> Reviewed-by: NHenrik Rydberg <rydberg@euromail.se> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 27 3月, 2014 1 次提交
-
-
由 Hans de Goede 提交于
The cypress PS/2 trackpad models supported by the cypress_ps2 driver emulate BTN_RIGHT events in firmware based on the finger position, as part of this no motion events are sent when the finger is in the button area. The INPUT_PROP_BUTTONPAD property is there to indicate to userspace that BTN_RIGHT events should be emulated in userspace, which is not necessary in this case. When INPUT_PROP_BUTTONPAD is advertised userspace will wait for a motion event before propagating the button event higher up the stack, as it needs current abs x + y data for its BTN_RIGHT emulation. Since in the cypress_ps2 pads don't report motion events in the button area, this means that clicks in the button area end up being ignored, so INPUT_PROP_BUTTONPAD actually causes problems for these touchpads, and removing it fixes: https://bugs.freedesktop.org/show_bug.cgi?id=76341Reported-by: NAdam Williamson <awilliam@redhat.com> Tested-by: NAdam Williamson <awilliam@redhat.com> Reviewed-by: NPeter Hutterer <peter.hutterer@who-t.net> Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 13 1月, 2014 1 次提交
-
-
由 Geert Uytterhoeven 提交于
Signed-off-by: NGeert Uytterhoeven <geert+renesas@linux-m68k.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 07 1月, 2014 1 次提交
-
-
由 Paul Gortmaker 提交于
None of these files are actually using any __init type directives and hence don't need to include <linux/init.h>. Most are just a left over from __devinit and __cpuinit removal, or simply due to code getting copied from one driver to the next. Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 27 12月, 2013 1 次提交
-
-
由 Yunkang Tang 提交于
This adds support for another flavor of ALPS protocol used in newer "Dolphin" devices. Signed-off-by: NYunkang Tang <yunkang.tang@cn.alps.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 19 12月, 2013 1 次提交
-
-
由 Hans de Goede 提交于
The current assumption in the elantech driver that hw version 3 touchpads are never clickpads and hw version 4 touchpads are always clickpads is wrong. There are several bug reports for this, ie: https://bugzilla.redhat.com/show_bug.cgi?id=1030802 http://superuser.com/questions/619582/right-elantech-touchpad-button-not-working-in-linux I've spend a couple of hours wading through various bugzillas, launchpads and forum posts to create a list of fw-versions and capabilities for different laptop models to find a good method to differentiate between clickpads and versions with separate hardware buttons. Which shows that a device being a clickpad is reliable indicated by bit 12 being set in the fw_version. I've included the gathered list inside the driver, so that we've this info at hand if we need to revisit this later. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Reviewed-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 06 12月, 2013 3 次提交
-
-
由 Jingoo Han 提交于
Use the wrapper function for retrieving the platform data instead of accessing dev->platform_data directly. This is a cosmetic change to make the code simpler and enhance the readability. Signed-off-by: NJingoo Han <jg1.han@samsung.com> Acked-by: NFugang Duan <B38611@freescale.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Yunkang Tang 提交于
The device uses special MPU controller that necessitates the new initialization sequence for the device. We also define a new protocol for the trackpad that allows reporting better resolution than older V2 protocol. Signed-off-by: NYunkang Tang <yunkang.tang@cn.alps.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Matt Walker 提交于
Added detection for newer Elantech touchpads, so that kernel doesn't fall-back to default PS/2 driver. Supports touchpads released after ~August 2013. Fixes bug: https://lists.launchpad.net/kernel-packages/msg18481.html Tested on an Acer Aspire S7-392-6302. Signed-off by: Matt Walker <matt.g.d.walker@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 15 11月, 2013 1 次提交
-
-
由 Dmitry Torokhov 提交于
This reverts commit 5beea882 as it breaks trackpoint operation on XT2.
-
- 31 10月, 2013 3 次提交
-
-
由 Joseph Salisbury 提交于
If hardware (or firmware) detects palm on the surface of the device it does not mean that the data packet is bad from the protocol standpoint. Instead of reporting PSMOUSE_BAD_DATA in this case simply threat it as if nothing touches the surface. BugLink: http://bugs.launchpad.net/bugs/1229361Signed-off-by: NJoseph Salisbury <joseph.salisbury@canonical.com> Tested-by: NKamal Mostafa <kamal@canonical.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Geyslan G. Bem 提交于
Get rid of unnecessary (void *) casting in 'cypress_init' function. Signed-off-by: NGeyslan G. Bem <geyslan@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Yunkang Tang 提交于
This patch adds support for touchpad found on Dell XT2. It's a dual device with device ID: 73, 00, 14, that comply with "ALPS_PROTO_V2". Signed-off-by: NYunkang Tang <yunkang.tang@cn.alps.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 23 10月, 2013 1 次提交
-
-
由 Yunkang Tang 提交于
Change the dev2's name from "PS/2 Mouse" to "ALPS PS/2 Device". Signed-off-by: NYunkang Tang <yunkang.tang@cn.alps.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 18 9月, 2013 1 次提交
-
-
由 Jingoo Han 提交于
Casting the return value which is a void pointer is redundant. The conversion from void pointer to any other pointer type is guaranteed by the C programming language. Signed-off-by: NJingoo Han <jg1.han@samsung.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 04 9月, 2013 1 次提交
-
-
由 Henrik Rydberg 提交于
A recent patch (9d9a04ee) added support for the new machine, but got the sequence of USB ids wrong. Reports from both Ian and Linus T show that the 0x0291 id is for ISO, not ANSI, which should have the missing number 0x0290. This patchs moves the three numbers accordingly, fixing the problem. Reported-and-tested-by: NIan Munsie <darkstarsword@gmail.com> Tested-by: NLinus G Thiel <linus@hanssonlarsson.se> Signed-off-by: NHenrik Rydberg <rydberg@euromail.se> Acked-by: NDmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 25 8月, 2013 1 次提交
-
-
由 Matteo Delfino 提交于
The signatures of v3 and v4 packets change depending on the value of a hardware flag called 'crc_enabled'. The packet type detection must change accordingly. This patch also restores a consistency check for v4 packets inadvertently removed by commit: 9eebed7d Input: elantech - fix for newer hardware versions (v7) A note about the naming convention: v3 hardware is associated with IC body v5 while v4 hardware is associated with IC body v6 and v7. The above commit refers to IC body v7, not to v7 hardware. Tested on Samsung NP730U3E (fw = 0x675f05, ICv7, crc_enabled = 1) Tested-by: NGiovanni Frigione <gio.frigione@gmail.com> Signed-off-by: NMatteo Delfino <kendatsuba@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 13 8月, 2013 2 次提交
-
-
由 Sachin Kamat 提交于
__initconst should be placed between the variable name and equal sign for the variable to be placed in the intended section. Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Sachin Kamat 提交于
__initconst should be placed between the variable name and equal sign for the variable to be placed in the intended section. Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 07 7月, 2013 1 次提交
-
-
由 Matteo Delfino 提交于
* Fix version recognition in elantech_set_properties The new hardware reports itself as v7 but the packets' structure is unaltered. * Fix packet type recognition in elantech_packet_check_v4 The bitmask used for v6 is too wide, only the last three bits of the third byte in a packet (packet[3] & 0x03) are actually used to distinguish between packet types. Starting from v7, additional information (to be interpreted) is stored in the remaining bits (packets[3] & 0x1c). In addition, the value stored in (packet[0] & 0x0c) is no longer a constant but contains additional information yet to be deciphered. This change should be backwards compatible with v6 hardware. Additional-author: Giovanni Frigione <gio.frigione@gmail.com> Signed-off-by: NMatteo Delfino <kendatsuba@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 03 7月, 2013 1 次提交
-
-
由 Dmitry Torokhov 提交于
The June 2013 Macbook Air (13'') has a new trackpad protocol; four new values are inserted in the header, and the mode switch is no longer needed. This patch adds support for the new devices. Cc: stable@vger.kernel.org Reported-and-tested-by: NBrad Ford <plymouthffl@gmail.com> Signed-off-by: NHenrik Rydberg <rydberg@euromail.se> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 05 6月, 2013 1 次提交
-
-
由 Eric Miao 提交于
In summary, the symptom is intermittent key events lost after resume on some machines with synaptics touchpad (seems this is synaptics _only_), and key events loss is due to serio port reconnect after psmouse sync lost. Removing psmouse and inserting it back during the suspend/resume process is able to work around the issue, so the difference between psmouse_connect() and psmouse_reconnect() is the key to the root cause of this problem. After comparing the two different paths, synaptics driver has its own implementation of synaptics_reconnect(), and the missing psmouse_probe() seems significant, the patch below added psmouse_probe() to the reconnect process, and has been verified many times that the issue could not be reliably reproduced. There are two PS/2 commands in psmouse_probe(): 1. PSMOUSE_CMD_GETID 2. PSMOUSE_CMD_RESET_DIS Only the PSMOUSE_CMD_GETID seems to be significant. The PSMOUSE_CMD_RESET_DIS is irrelevant to this issue after trying several times. So we have only implemented this patch to issue the PSMOUSE_CMD_GETID so far. Tested-by: NDaniel Manrique <daniel.manrique@canonical.com> Signed-off-by: NJames M Leddy <james.leddy@canonical.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 24 5月, 2013 1 次提交
-
-
由 Lars-Peter Clausen 提交于
free_irq() expects the same pointer that was passed to request_irq(), otherwise the IRQ is not freed. The issue was found using the following coccinelle script: <smpl> @r1@ type T; T devid; @@ request_irq(..., devid) @r2@ type r1.T; T devid; position p; @@ free_irq@p(..., devid) @@ position p != r2.p; @@ *free_irq@p(...) </smpl> Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 06 5月, 2013 2 次提交
-
-
由 Sachin Kamat 提交于
Commit 0998d063 (device-core: Ensure drvdata = NULL when no driver is bound) removes the need to set driver data field to NULL. Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Acked-by: NHans-Christian Egtvedt <egtvedt@samfundet.no> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Sachin Kamat 提交于
Commit 0998d063 (device-core: Ensure drvdata = NULL when no driver is bound) removes the need to set driver data field to NULL. Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 20 4月, 2013 1 次提交
-
-
由 Shawn Nematbakhsh 提交于
The trackpoint driver sets various parameter default values, all of which happen to be power-on defaults (Source: IBM TrackPoint Engineering Specification, Version 4.0. Also confirmed by empirical data). By sending the power-on reset command to reset all parameters to power-on state, we can skip the lengthy process of programming all parameters. In testing, ~2.5 secs of time writing parameters was reduced to .35 seconds waiting for power-on reset to complete. Signed-off-by: NShawn Nematbakhsh <shawnn@chromium.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 16 4月, 2013 2 次提交
-
-
由 Alexandre Courbot 提交于
GENERIC_GPIO is now equivalent to GPIOLIB and features that depended on GENERIC_GPIO can now depend on GPIOLIB to allow removal of this option. Signed-off-by: NAlexandre Courbot <acourbot@nvidia.com> Acked-by: NLinus Walleij <linus.walleij@linaro.org> Acked-by: NGrant Likely <grant.likely@secretlab.ca>
-
由 Dmitry Torokhov 提交于
This form is more concise. Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 18 3月, 2013 1 次提交
-
-
由 Sachin Kamat 提交于
module_platform_driver_probe() eliminates the boilerplate and simplifies the code. Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-