- 16 2月, 2015 1 次提交
-
-
由 Dmitry Torokhov 提交于
Instead of having various protocols provide <protocol>_supported() functions, let's use IS_ENABLED() macro that works well in "if" statements. Acked-by: NHans de Goede <hdegoede@redhat.com> Reviewed-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 30 12月, 2014 1 次提交
-
-
由 Mathias Gottschlag 提交于
Most of the protocol for these touchpads has been reverse engineered. This commit adds a basic multitouch-capable driver. A lot of the protocol is still unknown. Especially, we don't know how to identify the device yet apart from the PNP ID. The previous workaround for these devices has been left in place in case the driver is not compiled into the kernel or in case some other device with the same PNP ID is not recognized by the driver yet still has the same problems with the device probing code. Signed-off-by: NMathias Gottschlag <mgottschlag@gmail.com> Reviewed-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 29 10月, 2014 1 次提交
-
-
由 Dmitry Torokhov 提交于
psmouse_reconnect() will not be called if psmouse driver is not bound to the serio port, so there is no point in checking that. Also, as coded, it introduces potential NULL dereference in psmouse_dbg() in case psmouse is indeed NULL. Let's just remove it. Detected by Coverity: CID 146528 Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 16 9月, 2014 1 次提交
-
-
由 Hans de Goede 提交于
The Asus X450 and X550 laptops use a PS/2 touchpad from a new manufacturer called FocalTech: https://bugzilla.kernel.org/show_bug.cgi?id=77391 https://bugzilla.redhat.com/show_bug.cgi?id=1110011 The protocol for these devices is not known at this time, but even without knowing the protocol they need some special handling. They get upset by some of our other PS/2 device probing, and once upset generate random mouse events making things unusable even with an external mouse. This patch adds detection of these devices based on their pnp ids, and when they are detected, treats them as a bare ps/2 mouse. Doing things this way they at least work in their ps/2 mouse emulation mode. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 13 9月, 2014 1 次提交
-
-
由 Hans de Goede 提交于
The matches_pnp_id function from the synaptics driver is useful for other drivers too. Make it a generic psmouse helper function. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 09 9月, 2014 1 次提交
-
-
由 Hans de Goede 提交于
I've not done a full audit of all mouse drivers, I noticed these ones were missing the POINTER property while working on the POINTING_STICK property. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 17 1月, 2013 1 次提交
-
-
由 Dudley Du 提交于
This driver, submitted on behalf of Cypress Semiconductor Corporation and additional contributors, provides support for the Cypress PS/2 Trackpad. Original code contributed by Dudley Du (Cypress Semiconductor Corporation), modified by Kamal Mostafa and Kyle Fazzari. BugLink: http://launchpad.net/bugs/978807Signed-off-by: NDudley Du <dudl@cypress.com> Signed-off-by: NKamal Mostafa <kamal@canonical.com> Signed-off-by: NKyle Fazzari <git@status.e4ward.com> Signed-off-by: NMario Limonciello <mario_limonciello@dell.com> Signed-off-by: NTim Gardner <tim.gardner@canonical.com> Acked-by: NHerton Krzesinski <herton.krzesinski@canonical.com> Reviewed-by: NHenrik Rydberg <rydberg@euromail.se> Reviewed-by: NDudley Du <dudl@cypress.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 24 2月, 2012 1 次提交
-
-
由 Andres Salomon 提交于
Other drivers duplicate this code; no sense in having it be private to psmouse-base. Signed-off-by: NAndres Salomon <dilinger@queued.net> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 13 1月, 2012 1 次提交
-
-
由 Rusty Russell 提交于
module_param(bool) used to counter-intuitively take an int. In fddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy trick. It's time to remove the int/unsigned int option. For this version it'll simply give a warning, but it'll break next kernel version. Acked-by: NMauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
-
- 31 12月, 2011 1 次提交
-
-
由 Dmitry Torokhov 提交于
Several protocol initialization routines can fail after they set up psmouse methods, such as reconnect and disconnect. This may lead to these stale methods used with different protocol that they were intended to be used for and may cause unpredictavle behavior and/or crashes. Make sure we start with a clean slate before executing each and every protocol detection and/or initialization routine. Reported-by: NPaul Fox <pgf@laptop.org> Acked-by: NTai-hwa Liang <avatar@sentelic.com> Acked-by: NPaul Fox <pgf@laptop.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 10 11月, 2011 2 次提交
-
-
由 Daniel Drake 提交于
Currently, the synaptics driver puts the device into Absolute mode. As explained in the synaptics documentation section 3.2, in this mode, the device sends a continuous stream of packets at the maximum rate to the host when the user's fingers are near or on the pad or pressing buttons, and continues streaming for 1 second afterwards. These packets are even sent when there is no new information to report, even when they are duplicates of the previous packet. For embedded systems this is a bit much - it results in a huge and uninterrupted stream of interrupts at high rate. This patch adds support for Relative mode, which can be selected as a new psmouse protocol. In this mode, the device does not send duplicate packets and acts like a standard PS/2 mouse. However, synaptics-specific functionality is still available, such as the ability to set the packet rate, and rather than disabling gestures and taps at the hardware level unconditionally, a 'synaptics_disable_gesture' sysfs attribute has been added to allow control of this functionality. This solves a long standing OLPC issue: synaptics hardware enables tap to click by default (even in the default relative mode), but we have found this to be inappropriate for young children and first time computer users. Enabling the synaptics driver disables tap-to-click, but we have previously been unable to use this because it also enables Absolute mode, which is too "spammy" for our desires and actually overloads our EC with its continuous stream of packets. Now we can enable the synaptics driver, disabling tap to click while retaining the less noisy Relative mode. Signed-off-by: NDaniel Drake <dsd@laptop.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 JJ Ding 提交于
With commit 67d0a075 we mark strict_strtox as obsolete. Convert all remaining such uses in drivers/input/. Also change long to appropriate types, and return error conditions from kstrtox separately, as Dmitry sugguests. Signed-off-by: NJJ Ding <dgdunix@gmail.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 11 10月, 2011 1 次提交
-
-
由 Dmitry Torokhov 提交于
This will ensure our reporting is consistent with the rest of the system and we do not refer to obsolete source file names. Reviewed-by: NWanlong Gao <gaowanlong@cn.fujitsu.com> Reviewed-by: NJJ Ding <dgdunix@gmail.com> Reviewed-by: NDaniel Kurtz <djkurtz@chromium.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 12 11月, 2010 1 次提交
-
-
由 Daniel Drake 提交于
Add a "hgpk_mode" sysfs attribute that allows selection between 3 options: Mouse (the existing option), GlideSensor and PenTablet. GlideSensor is an enhanced protocol for the regular touchpad mode that additionally reports pressure and uses absolute coordinates. We suspect that it may be more reliable than mouse mode in some environments. PenTablet mode puts the touchpad into resistive mode, you must then use a stylus as an input. We suspect this is the most reliable way to drive the touchpad. The GlideSensor and PenTablet devices expose themselves with the intention of being combined with the synaptics X11 input driver. Based on earlier work by Paul Fox. Signed-off-by: NDaniel Drake <dsd@laptop.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 13 10月, 2010 1 次提交
-
-
由 Dmitry Eremin-Solenikov 提交于
Some (rare) serio devices need to have multiple serio children. One of the examples is PS/2 multiplexer present on several TQC STKxxx boards, which connect PS/2 keyboard and mouse to single tty port. Signed-off-by: NDmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 11 8月, 2010 1 次提交
-
-
由 Rusty Russell 提交于
This is more kernel-ish, saves some space, and also allows us to expand the ops without breaking all the callers who are happy for the new members to be NULL. The few places which defined their own param types are changed to the new scheme (more which crept in recently fixed in following patches). Since we're touching them anyway, we change get() and set() to take a const struct kernel_param (which they really are). This causes some harmless warnings until we fix them (in following patches). To reduce churn, module_param_call creates the ops struct so the callers don't have to change (and casts the functions to reduce warnings). The modern version which takes an ops struct is called module_param_cb. Signed-off-by: NRusty Russell <rusty@rustcorp.com.au> Reviewed-by: NTakashi Iwai <tiwai@suse.de> Tested-by: NPhil Carmody <ext-phil.2.carmody@nokia.com> Cc: "David S. Miller" <davem@davemloft.net> Cc: Ville Syrjala <syrjala@sci.fi> Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Cc: Alessandro Rubini <rubini@ipvvis.unipv.it> Cc: Michal Januszewski <spock@gentoo.org> Cc: Trond Myklebust <Trond.Myklebust@netapp.com> Cc: "J. Bruce Fields" <bfields@fieldses.org> Cc: Neil Brown <neilb@suse.de> Cc: linux-kernel@vger.kernel.org Cc: linux-input@vger.kernel.org Cc: linux-fbdev-devel@lists.sourceforge.net Cc: linux-nfs@vger.kernel.org Cc: netdev@vger.kernel.org
-
- 20 5月, 2010 1 次提交
-
-
由 Dmitry Torokhov 提交于
Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 13 5月, 2010 1 次提交
-
-
由 Dmitry Torokhov 提交于
Synaptics hardware requires resetting device after suspend to ram in order for the device to be operational. The reset lives in synaptics-specific reconnect handler, but it is not being invoked if synaptics support is disabled and the device is handled as a standard PS/2 device (bare or IntelliMouse protocol). Let's add reset into generic reconnect handler as well. Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 19 4月, 2010 1 次提交
-
-
由 Dmitry Torokhov 提交于
Observing behavior of the other OS it appears that parity errors reported by the keyboard controller are being ignored and the data is processed as usual. Let's do the same for standard PS/2 protocols (bare, Intellimouse and Intellimouse Explorer) to provide better compatibility. Thsi should fix teh following bug: https://bugzilla.kernel.org/show_bug.cgi?id=6105 Thanks for Damjan Jovanovic for locating the source of issue and ideas for the patch. Tested-by: NDamjan Jovanovic <damjan.jov@gmail.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 08 2月, 2010 1 次提交
-
-
由 Dmitry Torokhov 提交于
Set state of the device as "initializing" during and after cleanup to ensure that unsolicited data from the device is not passed on. We especially want to avoid processing new device announcements "0xaa 0x00" that can come up before we perform reconnect operation. Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 13 1月, 2010 1 次提交
-
-
由 Tai-hwa Liang 提交于
Sentelic probes confuse IBM trackpoints so they stop responding to TP_READ_ID command. See: http://bugzilla.kernel.org/show_bug.cgi?id=14970 Let's move FSP detection lower so it is probed after trackpoint and others, just before we strat probing for Intellimouse Explorer. Signed-off-by: NTai-hwa Liang <avatar@sentelic.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 07 1月, 2010 1 次提交
-
-
由 Daniel Drake 提交于
For configurations where Synaptics hardware is present but the Synaptics extensions support is not compiled in, the mouse is reprobed and a new device is allocated on every suspend/resume. During probe, psmouse_switch_protocol() calls psmouse_extensions() with set_properties=1. This calls the dummy synaptics_init() which returns an error code, instructing us not to use the synaptics extensions. During resume, psmouse_reconnect() calls psmouse_extensions() with set_properties=0, in which case call to synaptics_init() is bypassed and PSMOUSE_SYNAPTICS is returned. Since the result is different from previous attempt psmouse_reconnect() fails and full re-probe happens. Fix this by tweaking the set_properties=0 codepath in psmouse_extensions() to be more careful about offering PSMOUSE_SYNAPTICS extensions. Signed-off-by: NDaniel Drake <dsd@laptop.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 06 1月, 2010 1 次提交
-
-
由 Eric W. Biederman 提交于
sysfs_remove_group() waits for sysfs attributes to be removed, therefore we do not need to worry about driver-specific attributes being accessed after driver has been detached from the device. In fact, attempts to take serio->drv_mutex in attribute methods may lead to the following deadlock: sysfs_read_file() fill_read_buffer() sysfs_get_active_two() psmouse_attr_show_helper() serio_pin_driver() serio_disconnect_driver() mutex_lock(&serio->drv_mutex); <--------> mutex_lock(&serio_drv_mutex); psmouse_disconnect() sysfs_remove_group(... psmouse_attr_group); .... sysfs_deactivate(); wait_for_completion(); Fix this by removing calls to serio_[un]pin_driver() and functions themselves and using driver-private mutexes to serialize access to attribute's set() methods that may change device state. Signed-off-by: NEric W. Biederman <ebiederm@xmission.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 25 12月, 2009 1 次提交
-
-
由 Dmitry Torokhov 提交于
Instead of doing full-blown reset while suspending or shutting down the box use lighter form of reset that should take less time. Tested-by: NAlan Stern <stern@rowland.harvard.edu> Tested-by: NRafael J. Wysocki <rjw@sisk.pl> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 04 12月, 2009 1 次提交
-
-
由 Dmitry Torokhov 提交于
DMI tables use considerable amount of memory. Mark them as __initconst so they will be discarded once module is loaded. Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 20 11月, 2009 1 次提交
-
-
由 Dmitry Torokhov 提交于
Do not start protocol detection assuming that middle mouse is present, instead let individual protocols explicitly set this capability. This fixes issue with Synaptics touchpads pretending that they have middle button when hardware clearly reports otherwise. Reported-and-tested-by: NAndrey Borzenkov <arvidjaar@mail.ru> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 17 11月, 2009 1 次提交
-
-
由 Jiri Kosina 提交于
Commit b7802c5c ("Input: psmouse - use boolean type") caused the synaptics_hardware variable to be completely useless, as it is constantly set to 'true' throughout the whole psmouse_extensions(). This was caused by the following hunk in the commit in question - int synaptics_hardware = 0; + bool synaptics_hardware = true; which is wrong and causes driver to issue extra reset when falling back to bare PS/2 protocol. Signed-off-by: NJiri Kosina <jkosina@suse.cz> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 13 11月, 2009 1 次提交
-
-
由 Takashi Iwai 提交于
The get parameter function should return a string without a life-feed. Otherwise you'll see additional empty line in sysfs parameters file. Signed-off-by: NTakashi Iwai <tiwai@suse.de> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 11 9月, 2009 1 次提交
-
-
由 Dmitry Torokhov 提交于
Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 20 8月, 2009 1 次提交
-
-
由 Tai-hwa Liang 提交于
This is the driver for Sentelic Finger Sensing Pad which can be found on MSI WIND Netbook. Signed-off-by: NTai-hwa Liang <avatar@sentelic.com> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 16 5月, 2009 1 次提交
-
-
由 Zephaniah E. Hull 提交于
It appears that when the XO touchpad unit resets from ESD, it sends AA AA instead of AA 00, the psmouse-base code handles the case of AA 00 by triggering a serio reconnect for the port, causing a full reprobe of the device. Testing with OFW shows that this is likely to solve the problem, so the attached patch simply expands the existing test to also catch AA AA. Signed-off-by: NAndres Salomon <dilinger@debian.org> Signed-off-by: NDeepak Saxena <dsaxena@laptop.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 17 10月, 2008 1 次提交
-
-
由 Arjan Opmeer 提交于
This is version 5 of the driver. Relative mode support has been dropped (users wishing to use touchpad in relative mode can use standard PS/2 protocol emulation done in hardware). The driver supports both original version of Elantech protocol and the newer one used by touchpads installed in EeePC. Signed-off-by: NArjan Opmeer <arjan@opmeer.net> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 22 9月, 2008 4 次提交
-
-
由 Andres Salomon 提交于
This adds support for OLPC's touchpad. It has lots of neat features, none of which are enabled because the hardware is too buggy. Instead, we use it like a normal touchpad, but with a number of workarounds in place to deal with the frequent hardware spasms. Humidity changes, sweat, tinfoil underwear, plugging in AC, drinks, evil felines.. All tend to cause the touchpad to freak out. Signed-off-by: NAndres Salomon <dilinger@debian.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 Andres Salomon 提交于
We want to support attr->set callbacks that may need psmouse->state to not be updated, or may want to manually deal w/ enabling and disabling the device. To do that, we create __PSMOUSE_DEFINE_ATTR which enables us to set a 'protect' argument specifying whether or not the set callback should be protected with psmouse_disable and state setting. Signed-off-by: NAndres Salomon <dilinger@debian.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 Andres Salomon 提交于
psmouse_queue_work is passed a delayed_work struct, and queues up the work with kpsmouse_wq. Since we're dealing with delayed_work stuff, this also switches resync_work to a delayed_work struct as well, and makes use of psmouse_queue_work when doing a resync within psmouse-base. Signed-off-by: NAndres Salomon <dilinger@debian.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
由 Andres Salomon 提交于
Signed-off-by: NAndres Salomon <dilinger@debian.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 11 9月, 2008 1 次提交
-
-
由 Joe Rouvier 提交于
strict_strtoul() allows newline character at the end of the the input string and therefore is more user-friendly. Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 21 1月, 2008 1 次提交
-
-
由 Julia Lawall 提交于
Drop #include <linux/moduleparam.h> in files that also include linux/module.h, since module.h includes moduleparam.h already. Signed-off-by: NJulia Lawall <julia@diku.dk> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 18 1月, 2008 1 次提交
-
-
由 Andres Salomon 提交于
If we successfully call input_register_device() in psmouse_connect() but sysfs_create_group() fails, we'll enter the error path without ever having called input_unregister_device() potentially leaking memory. Signed-off-by: NAndres Salomon <dilinger@debian.org> Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
-
- 20 10月, 2007 1 次提交
-
-
由 Jean Delvare 提交于
From: Jean Delvare <khali@linux-fr.org> Signed-off-by: NJean Delvare <khali@linux-fr.org> Signed-off-by: NAdrian Bunk <bunk@kernel.org>
-