17 Sep, 2011
1 commit
-
* 'for-linus' of git://github.com/dtor/input:
Input: wacom - fix touch parsing on newer Bamboos
Input: bcm5974 - add MacBookAir4,1 trackpad support
Input: wacom - add POINTER and DIRECT device properties
Input: adp5588-keys - remove incorrect modalias
Input: cm109 - fix checking return value of usb_control_msg
Input: wacom - advertise BTN_TOOL_PEN and BTN_STYLUS for PenPartner
Input: wacom - remove pressure for touch devices
09 Sep, 2011
1 commit
-
Adds INPUT_PROP_POINTER or INPUT_PROP_DIRECT as necessary to the
hardware supported by the Wacom driver. The DIRECT property is
assigned to devices with an embedded screen (i.e. touchscreens
and display tablets). The POINTER property is assigned to those
without embedded screens.Signed-off-by: Jason Gerecke
Reviewed-by: Ping Cheng
Signed-off-by: Dmitry Torokhov
07 Sep, 2011
3 commits
-
HID devices can be hotplugged so we should unregister all sysfs attributes when
removing a driver. Otherwise, manually unloading the wacom-driver will not
remove the sysfs attributes. Only when the device is disconnected, they are
removed, eventually.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
power_supply_unregister() must not be called if power_supply_register() failed.
The wdata->psy.dev pointer may point to invalid memory after a failed
power_supply_register() and hence wacom_remove() will fail while calling
power_supply_unregister().This changes the wacom_probe function to fail if it cannot register the
power_supply devices. If we would want to keep the previous behaviour we had to
keep some flag about the power_supply state and check it on wacom_remove, but
this seems inappropriate here. Hence, we simply fail, too, if
power_supply_register fails.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina
25 Aug, 2011
2 commits
-
Create each gamepad as a separate joystick
Signed-off-by: Clemens Werther
Signed-off-by: Jiri Kosina -
This is basically a more generic respin of 23746a6 ("HID: magicmouse: ignore
'ivalid report id' while switching modes") which got reverted later by
c3a492.It turns out that on some configurations, this is actually still the case
and we are not able to detect in runtime.The device reponds with 'invalid report id' when feature report switching it
into multitouch mode is sent to it.This has been silently ignored before 0825411ade ("HID: bt: Wait for ACK
on Sent Reports"), but since this commit, it propagates -EIO from the _raw
callback .So let the driver ignore -EIO as response to 0xd7,0x01 report, as that's
how the device reacts in normal mode.Sad, but following reality.
This fixes https://bugzilla.kernel.org/show_bug.cgi?id=35022
Reported-by: Chase Douglas
Reported-by: Jaikumar Ganesh
Tested-by: Chase Douglas
Tested-by: Jaikumar Ganesh
Signed-off-by: Jiri Kosina
24 Aug, 2011
1 commit
23 Aug, 2011
6 commits
-
The wiimote resets the current drm when an extension is plugged in.
Fortunately, it also sends a status report in this situation so we just
reset the drm on every status report to keep the drm consistent.Also handle return reports from the wiimote which indicate success and
failure of requests that we've sent.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
The wiimote reports data in several data reporting modes (DRM). The DRM
request makes the wiimote send data in the requested drm.The DRM mode can be set explicitely or can be chosen by the driver. To let
the driver choose the DRM mode, pass WIIPROTO_REQ_NULL placeholder to it. This
is no valid request and is replaced with an appropriate DRM.Currently, the driver always sets the basic DRM_K mode, but this will be
extended when further peripherals like accelerometer and IR are supported.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
This registers 4 led devices to allow controlling the wiimote leds via standard
LED sysfs API. It removes the four sysfs attributes so we don't have two APIs
for one device.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
Even though the bluetooth hid backend does not react on open/close callbacks, we
should call them to be consistent with other hid drivers.Also the new input open/close handlers will be used in future to prepare the
wiimote device for IR/extension input.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
The new locking scheme in HID core allows us to remove a bit of synchronization.
Since the HID layer acts synchronously we simply register input core last and
there are no synchonization issues anymore.
Also register sysfs files after that to simplify the code.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
Patch to add SiGma Micro-based keyboards (1c4f:0002) to hid-quirks.
These keyboards dont seem to allow the records to be initialized, and hence a
timeout occurs when the usbhid driver attempts to initialize them. The patch
just adds the signature for these keyboards to the hid-quirks list with the
setting HID_QUIRK_NO_INIT_REPORTS. This removes the 5-10 second wait for the
timeout to occur.Signed-off-by: Jeremiah Matthey
Signed-off-by: Jiri Kosina
10 Aug, 2011
1 commit
-
Add touch surface resolution information. The size of the touch surfaces
has been determined to the hundredth of a mm.Cc: Jiri Kosina
Cc: Michael Poole
Cc: linux-input@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Chase Douglas
[jkosina@suse.cz: update comments and commit message]
Signed-off-by: Jiri Kosina
02 Aug, 2011
1 commit
-
Add USB device ids for the new revision (MB110LL/B) of Apple's wired aluminum
keyboard. I have only confirmed that the ANSI version is correct - it is
assumed that the ISO and JIS versions follow the standard numbering convention.Signed-off-by: Dan Bastone
Signed-off-by: Jiri Kosina
23 Jul, 2011
1 commit
22 Jul, 2011
1 commit
-
Add forgotten entry into the global blacklist.
Signed-off-by: Jiri Kosina
21 Jul, 2011
3 commits
-
This patch adds support for the CSR panel built by XAT.
Signed-off-by: Ice Chien
Signed-off-by: Jiri Kosina -
Signed-off-by: Axel Lin
Signed-off-by: Jiri Kosina -
The following symbols are not referenced outside this file so
there's no need for it to be in the global name space.pcmidi_sustained_note_release
init_sustain_timers
stop_sustain_timers
pcmidi_handle_report
pcmidi_setup_extra_keys
pcmidi_snd_initialise
pcmidi_snd_terminateMake them static.
Signed-off-by: Axel Lin
Signed-off-by: Jiri Kosina
20 Jul, 2011
1 commit
-
emsff_init() may fail, let's properly handle the failure.
Signed-off-by: Axel Lin
Signed-off-by: Jiri Kosina
14 Jul, 2011
1 commit
-
hid_hw_stop() must be called in ax_probe() error path if hid_hw_start()
was successful.Signed-off-by: Axel Lin
Signed-off-by: Jiri Kosina
12 Jul, 2011
1 commit
-
Microsoft comfort mouse 4500 report descriptor contains duplicate
usages for horizontal wheel. This patch fixes the wrong mapping
caused by that.Signed-off-by: Ari Savolainen
Signed-off-by: Jiri Kosina
11 Jul, 2011
13 commits
-
Add support for UC-Logic Tablet WP1062 by fixing its report descriptor.
This tablet is sold as Monoprice 10X6.25 Inches Graphic Drawing Tablet.
Signed-off-by: Nikolai Kondrashov
Signed-off-by: Jiri Kosina -
Add sysfs files for each led of the wiimote. Writing 1 to the file
enables the led and 0 disables the led.We do not need memory barriers when checking wdata->ready since we use
a spinlock directly after it.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
Save the current state of the leds in the wiimote data structure. This
allows us to discard new led requests that wouldn't change anything.
Protect the whole state structure by a spinlock. Every wiiproto_*
function expects this spinlock to be held when called.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
Add new request that sets the leds on the target device. Also, per
default, set led1 after initializing a device.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
Parse input report 0x30 from the wiimote as button input. We need to
send events for all buttons on every input report because the wiimote
does not send events for single buttons but always for all buttons
to us. The input layer, however, filters redundant events.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
Create array of all event handlers and call each handler when we
receive the related event.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
The raw hid output function that is supported by bluetooth low-level
hid driver does not provide an output queue and also may sleep. The
wiimote driver, though, may need to send data in atomic context so
this patch adds a buffered output queue for the wiimote driver.We use the shared workqueue to send our buffer to the hid device.
There is always only one active worker which flushes the whole output
queue to the device. If our queue is full, every further
output is discarded.Special care is needed in the deinitialization routine. When
wiimote_hid_remove is called, HID input is already disabled, but HID
output may still be used from our worker and is then discarded by the
lower HID layers. Therefore, we can safely disable the input layer since it
is the only layer that still sends input events.
Future sysfs attributes must be freed before unregistering input to
avoid the sysfs handlers to send input events to a non-existing input
layer.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
The wiimote driver needs to send raw output reports to the wiimote
device. Otherwise we could not manage the peripherals of the wiimote
or perform memory operations on the wiimote.
We cannot use hidinput_input_event of the lowlevel hid driver, since
this does not accept raw input. Therefore, we need to use the same
function that hidraw uses to send output. Side effect is, the raw
output function is not buffered and can sleep.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
The wiimote first starts HID hardware and then registers the input
device. We need to synchronize the startup so no event handler will
start parsing events when the wiimote device is not ready, yet.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
Register input device so the wiimote can report input events on
it. We do not use HIDINPUT because the wiimote does not provide any
descriptor table which might be used by HIDINPUT. So we avoid
having HIDINPUT parse the wiimote descriptor and create unrelated
or unknown event flags. Instead we register our own input device
that we have full control of.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
Allocate wiimote device structure with all wiimote related data
when registering new wiimote devices.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
The wiimote uses a fake HID protocol. Hence, we need to prevent
HIDINPUT and HIDDEV from parsing wiimote data and instead parse
raw hid events.
Add VID/PID to hid-core so the special driver is loaded on new
wiimotes.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina -
Add stub driver for the Nintendo Wii Remote. The wii remote uses
the HID protocol to communicate with the host over bluetooth. Hence,
add dependency for HIDP and place driver in hid subsystem.Signed-off-by: David Herrmann
Signed-off-by: Jiri Kosina
27 Jun, 2011
1 commit
-
Add force feedback support for Holtek On Line Grip based HID devices.
The protocol is more complex than that of most other rumblepads, but the
device still needs to be handled as a memoryless one.Tested by Cleber de Mattos Casali with a 1241:5015 "Clone Joypad Super
Power Fire" gamepad, with help from Hendrik Iben .Signed-off-by: Anssi Hannula
Tested-by: Cleber de Mattos Casali
Signed-off-by: Jiri Kosina
24 Jun, 2011
2 commits
-
Signed-off-by: Benjamin Tissoires
Signed-off-by: Jiri Kosina -
while merging hid-stantum into hid-multitouch, I did not correctly copy/paste
the VIDs for those devices. This patch fixes it.Signed-off-by: Benjamin Tissoires
Signed-off-by: Jiri Kosina