| Age | Commit message (Collapse) | Author | Files | Lines |
|
Apparently all 3 bytes returned by ETP_FW_VERSION_QUERY are significant
and should be taken into account when matching hardware version/features.
Tested-by: Eric Piel <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Signed-off-by: Eric Miao <[email protected]>
|
|
Tosa is now able to use generic matrix keypad driver instead of the deprecated
tosakbd.c, where CONFIG_KEYBOARD_TOSA_USE_EXT_KEYCODES is still useful. Move
it to mach/Kconfig.
Signed-off-by: Eric Miao <[email protected]>
|
|
The corgi touchscreen is now deprecated in favour of the generic ads7846.c
driver. The noise reduction technique used in corgi_ts.c, which is to wait
till vsync before ADC sampling, is also integrated into ads7846 driver now.
Provided that the original driver is not generic and is difficult to maintain,
it will be removed now.
Signed-off-by: Eric Miao <[email protected]>
Cc: Richard Purdie <[email protected]>
Cc: Pavel Machek <[email protected]>
Cc: Dmitry Torokhov <[email protected]>
|
|
USB ID entry for "Guillemot Jet Leader 3D" in iforce-main.c did not match
one used in iforce-usb.c
Signed-off-by: Marek Vasut <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
This device features a RUDDER on the knob.
Signed-off-by: Marek Vasut <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
The patch introduces a serio driver that supports a keyboard serial port found
on the Amstrad Delta videophone board.
After initializing the hardware, the driver reads its input data from a buffer
filled in by the board FIQ (Fast Interrupt Request) handler.
Standard AT keyboard driver (atkbd) will be used on top of the serio layer for
handling the E3 keyboard (called mailboard) connected to the port. Since the
device generated scancodes differ from what the atkbd expects, a custom key
code to scan code table must be loaded from userspace for the keyboard to be
useable.
Signed-off-by: Janusz Krzysztofik <[email protected]>
Acked-by: Dmitry Torokhov <[email protected]>
Signed-off-by: Tony Lindgren <[email protected]>
|
|
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:
Input: joydev - allow binding to button-only devices
Input: elantech - ignore high bits in the position coordinates
Input: elantech - allow forcing Elantech protocol
Input: elantech - fix firmware version check
Input: ati_remote - add some missing devices from lirc_atiusb
Input: eeti_ts - cancel pending work when going to suspend
Input: Add support of Synaptics Clickpad device
Revert "Input: ALPS - add signature for HP Pavilion dm3 laptops"
Input: psmouse - ignore parity error for basic protocols
|
|
Dance pads don't have an axis, so allow this kind of controllers
to be used via legacy joystick interface.
Signed-off-by: Christoph Fritz <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
This patch implements a simple Keypad driver that functions
as an I2C client. It handles key press events for keys
connected to TCA6416 I2C based IO expander.
Signed-off-by: Sriramakrishnan <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
In older versions of the elantech hardware/firmware those bits always
were unset, so it didn't actually matter, but newer versions seem to
use those high bits for something else, screwing up the coordinates
we report to the input layer for those devices.
Signed-off-by: Florian Ragwitz <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Apparently hardware vendors now ship elantech touchpads with different version
magic. This options allows for them to be tested easier with the current driver
in order to add their magic to the whitelist later.
Signed-off-by: Florian Ragwitz <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
The check determining whether device should use 4- or 6-byte packets
was trying to compare firmware with 2.48, but was failing on majors
greater than 2. The new check ensures that versions like 4.1 are
checked properly.
Signed-off-by: Florian Ragwitz <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
The (out-of-tree) lirc_atiusb driver has a much longer list of devices
it supports. Some of them look like they may just be guesses at possible
device IDs, but a few are definitely confirmed devices. This adds the
nVidia-branded RF receiver and the X10 Lola Wireless Video Sender device
(which contains an RF receiver) to the list of devices in ati_remote.
Signed-off-by: Jarod Wilson <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Signed-off-by: Eric Miao <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
|
|
The device does not emit EV_MSC/MSC_SERIAL nor EV_KEY/BTN_MIDDLE events
so it should not mark them as supported in capabilities bitmaps. This
still leaves BTN_TOOL_PEN and BTN_TOUCH events being processed in a funky
manner.
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
There is no need to check whether kbtab structure is attached to the
interface; if it isn't and we are called we have much bigger problems.
Also no need to call usb_kill_urb() in kbtab_disconnect() since it
is being called in kbtab_close().
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
The size allocated by usb_buffer_alloc() is 8, however the size passed
to usb_buffer_free() is 10.
Signed-off-by: Axel Lin <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
The device does not emit events for left/right/middle mouse buttons
so it should not mark them as supported in capabilities bitmaps.
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Also switch to using input_set_abd_params() helper.
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
There is no need to check whether acecad structure is attached to the
interface; if it isn't and we are called we have much bigger problems.
Also no need to call usb_kill_urb() in usb_acecad_disconnect() since
it is being called in usb_acecad_close().
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
The size allocated by usb_buffer_alloc() is 8, however the size passed to
usb_buffer_free() in usb_acecad_disconnect() is 10.
Signed-off-by: Axel Lin <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
This fixes a race between the suspend code and input events.
Signed-off-by: Daniel Mack <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
The new type of touchpads can be detected via a new query command
0x0c. The clickpad flags are in cap[0]:4 and cap[1]:0 bits.
When the device is detected, the driver now reports only the left
button as the supported buttons so that X11 driver can detect that
the device is Clickpad. A Clickpad device gives the button events
only as the middle button. The kernel driver morphs to the left
button. The real handling of Clickpad is done rather in X driver
side.
Signed-off-by: Takashi Iwai <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
This reverts commit 5e28d8eb68c12eab9c4a47b42ba993a6420d71d3 since
the magic knock does not work for this model of the touchpad and the
device stays in PS/2 compatibility mode.
|
|
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: Damjan Jovanovic <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
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:
Input: wacom - switch mode upon system resume
Revert "Input: wacom - merge out and in prox events"
Input: matrix_keypad - allow platform to disable key autorepeat
Input: ALPS - add signature for HP Pavilion dm3 laptops
Input: i8042 - spelling fix
Input: sparse-keymap - implement safer freeing of the keymap
Input: update the status of the Multitouch X driver project
Input: clarify the no-finger event in multitouch protocol
Input: bcm5974 - retract efi-broken suspend_resume
Input: sparse-keymap - free the right keymap on error
|
|
When Wacom devices wake up from a sleep, the switch mode command
(wacom_query_tablet_data) is needed before wacom_open is called.
wacom_query_tablet_data should not be executed inside wacom_open
since wacom_open is called more than once during probe.
wacom_retrieve_hid_descriptor is removed from wacom_resume due
to the fact that the required descriptors are stored properly
upon system resume.
Reported-and-tested-by: Anton Anikin <[email protected]>
Signed-off-by: Ping Cheng <[email protected]>
Cc: [email protected]
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Adds support for Hampshire TSHARC serial touchscreens. Implements
Hampshire's 4-byte communication protocol.
Signed-off-by: Adam Bennett <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Signed-off-by: Barry Song <[email protected]>
Signed-off-by: Mike Frysinger <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
AD7142 and AD7147 are integrated capacitance-to-digital converters
(CDCs) with on-chip environmental calibration for use in systems
requiring a novel user input method. The AD7142 and AD7147 can interface
to external capacitance sensors implementing functions such as buttons,
scrollwheels, sliders, touchpads and so on.
The chips don't restrict the specific usage. Depending on the hardware
connection, one special target board can include one or several these
components. The platform_data for the device's "struct device" holds
these information. The data-struct defined in head file descript the
hardware feature of button/scrollwheel/slider/touchpad components on
target boards, which need be filled in the arch/mach-/.
As the result, the driver is independent of boards. It gets the
components layout from the platform_data, registers related devices,
fullfills the algorithms and state machines for these components and
report related input events to up level.
Signed-off-by: Bryan Wu <[email protected]>
Signed-off-by: Michael Hennerich <[email protected]>
Signed-off-by: Barry Song <[email protected]>
Signed-off-by: Mike Frysinger <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Do not leave dangling client data pointers when unbinding device from the
driver or when binding fails for some reason.
Signed-off-by: Wolfram Sang <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Do not leave dangling client data pointers when unbinding device from the
driver.
Signed-off-by: Wolfram Sang <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Signed-off-by: Bryan Wu <[email protected]>
Signed-off-by: Mike Frysinger <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
The corgi touchscreen is now deprecated in favour of the generic ads7846.c
driver. The noise reduction technique used in corgi_ts.c, which is to wait
till vsync before ADC sampling, is also integrated into ads7846 driver now.
Provided that the original driver is not generic and is difficult to maintain,
it will be removed now.
Signed-off-by: Eric Miao <[email protected]>
Cc: Richard Purdie <[email protected]>
Cc: Pavel Machek <[email protected]>
Cc: Dmitry Torokhov <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Clean up 2-finger touch support. This still needs to be converted to
proper multi-touch protocol.
Signed-off-by: Ping Cheng <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Also get rid of wacom_le16_to_cpu() and wacom_be16_to_cpu() helpers and
ise le16_to_cpup() and be16_to_cpup() directly.
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Now that we moved input device from struct wacom to struct wacom_wac,
presence of wacom_combo just complicats things for no good reason.
Let's get rid of it and simply pass URB length to wacom_wac_irq().
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Input event interface is pretty stable so let's get rig of wrappers
for input_event() and fiends and call them directly. This will simplify
and speed up code a bit.
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Fix identation of switch/case statements so they follow style used by the
rest of the kernel.
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
There is no reason for allocating struct wacom_wac separately from
struct wacom since both have the same lifetime rules and are not
shared. Also make 'open' field a boolean.
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Touch enbaled devices share the same product ID with pen. However,
we do not want to post touch events while pen is in prox. To do so,
we used to keep a local static variable to keep track of if pen is
in prox or not. This works fine for Tablet PC devices since there
is only one device attached. With the newer touch enabled regular
tablets, we can not make this assumption any more, i.e, one system
may have more than one identical tablet plugged in.
This patch adds an new entry, shared, into the struct wacom_wac so
touch data can access pen data to locally. This solution assumes
the two tools (touch and pen) of the same ID will be probed one
after the other without interruption in between by another Wacom
device of the same ID.
|
|
Process out and in prox events for Graphire and Tablet PC devices
in the same loop to simplify the data parsing logic.
[re-applying after revert since other patches are based on this one]
Signed-off-by: Ping Cheng <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
|
|
When Wacom devices wake up from a sleep, the switch mode command
(wacom_query_tablet_data) is needed before wacom_open is called.
wacom_query_tablet_data should not be executed inside wacom_open
since wacom_open is called more than once during probe.
wacom_retrieve_hid_descriptor is removed from wacom_resume due
to the fact that the required descriptors are stored properly
upon system resume.
Signed-off-by: Ping Cheng <[email protected]>
Reported-and-tested-by: Anton Anikin <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
This reverts commit 776943fd6f104a6e8457dc95a17282e69e963666 as it
causes issues with ISDv4 E3 touchscreens:
https://bugzilla.kernel.org/show_bug.cgi?id=15670
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
In an embedded system the matrix_keypad driver might be used to
interface with an external control panel and not an actual keyboard.
On the control panel some of the keys could be used to turn on/off
various functions. If key autorepeat is enabled this causes the
function to quickly toggle between the on and off states and makes
operation difficult.
Add an option in the platform-specific data to disable the key
autorepeat.
Signed-off-by: H Hartley Sweeten <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Tested by a user running Ubuntu 9.10 in the following bug report.
BugLink: http://bugs.launchpad.net/bugs/545307
Signed-off-by: Chase Douglas <[email protected]>
Cc: [email protected]
Signed-off-by: Dmitry Torokhov <[email protected]>
|
|
Signed-off-by: Dominik Brodowski <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>
|