[GIT PULL 0/26] Input update

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Linus,

Here comes another input update, mostly fixes/workarounds to get oddball
hardware work nicely and cleanups.

Dmitry put all the patches into a GIT repository, ready for you to pull:

	rsync://rsync.kernel.org/pub/scm/linux/kernel/git/dtor/input.git

The diffstat and list of changes follows:

----

 b/Documentation/kernel-parameters.txt            |    1 
 b/drivers/char/keyboard.c                        |    2 
 b/drivers/input/evdev.c                          |    2 
 b/drivers/input/joystick/iforce/iforce-packets.c |   32 --
 b/drivers/input/joystick/iforce/iforce-usb.c     |    1 
 b/drivers/input/keyboard/atkbd.c                 |   10 
 b/drivers/input/keyboard/sunkbd.c                |    2 
 b/drivers/input/mouse/Makefile                   |    2 
 b/drivers/input/mouse/alps.c                     |    2 
 b/drivers/input/mouse/logips2pp.c                |   12 
 b/drivers/input/mouse/psmouse-base.c             |   15 +
 b/drivers/input/mouse/psmouse.h                  |    1 
 b/drivers/input/mouse/trackpoint.c               |  297 +++++++++++++++++++++++
 b/drivers/input/mouse/trackpoint.h               |  147 +++++++++++
 b/drivers/input/serio/i8042-io.h                 |    6 
 b/drivers/input/serio/i8042-ip22io.h             |    2 
 b/drivers/input/serio/i8042-jazzio.h             |    2 
 b/drivers/input/serio/i8042-sparcio.h            |   12 
 b/drivers/input/serio/i8042-x86ia64io.h          |   22 -
 b/drivers/input/serio/i8042.c                    |  174 +++++++------
 b/drivers/usb/input/hid-core.c                   |   62 +++-
 b/drivers/usb/input/hid-debug.h                  |   17 +
 b/drivers/usb/input/hid-input.c                  |    1 
 b/drivers/usb/input/hid.h                        |    1 
 b/drivers/usb/input/hiddev.c                     |    1 
 b/include/linux/input.h                          |    8 
 drivers/char/keyboard.c                          |  109 ++++----
 drivers/input/mouse/logips2pp.c                  |    1 
 drivers/input/mouse/psmouse-base.c               |  117 +++++----
 drivers/input/mouse/psmouse.h                    |   49 ++-
 drivers/input/mouse/trackpoint.c                 |  183 +++++++-------
 drivers/input/serio/i8042-x86ia64io.h            |   50 ++-
 drivers/input/serio/i8042.c                      |   33 +-
 drivers/usb/input/hid-core.c                     |   11 
 drivers/usb/input/hid-debug.h                    |   17 -
 drivers/usb/input/hid-input.c                    |   71 ++++-
 drivers/usb/input/hid.h                          |   12 
 37 files changed, 1081 insertions(+), 406 deletions(-)

----

author Dmitry Torokhov <[email protected]> 1126371882 -0500
committer Dmitry Torokhov <[email protected]> 1126371882 -0500

Input: i8042 - use kzalloc instead of kcalloc

Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Dmitry Torokhov <[email protected]> 1126371818 -0500
committer Dmitry Torokhov <[email protected]> 1126371818 -0500

Input: clean up whitespace and formatting in drivers/char/keyboard.c

Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Stefan Nickl <[email protected]> 1125903466 -0500
committer Dmitry Torokhov <[email protected]> 1125903466 -0500

Input: HIDDEV - make HIDIOCSREPORT wait IO completion

When trying to make the hiddev driver issue several Set_Report control
transfers to a custom device with 2.6.13-rc6, only the first transfer in a
row is carried out, while others immediately following it are silently
dropped.

This happens where hid_submit_report() (in hid-core.c) tests for
HID_CTRL_RUNNING, which seems to be still set because the first transfer is
not finished yet.

As a workaround, inserting a delay between the two calls to
ioctl(HIDIOCSREPORT) in userspace "solves" the problem.  The
straightforward fix is to add a call to hid_wait_io() to the implementation
of HIDIOCSREPORT (in hiddev.c), just like for HIDIOCGREPORT.  Works fine
for me.

Apparently, this issue has some history:
http://marc.theaimsgroup.com/?l=linux-usb-users&m=111100670105558&w=2

Signed-off-by: Stefan Nickl <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Brian Schau <[email protected]> 1125903461 -0500
committer Dmitry Torokhov <[email protected]> 1125903461 -0500

Input: HID - add Wireless Security Lock to HID blacklist

The device is a Wireless Security Lock (WSL).  The device identifies itself
as a Cypress Ultra Mouse.  It is, however, not a mouse at all and as such,
shouldn't be handled as one.

Signed-off-by: Brian Schau <[email protected]>
Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Stelian Pop <[email protected]> 1125903453 -0500
committer Dmitry Torokhov <[email protected]> 1125903453 -0500

Input: HID - add mapping for Powerbook USB keyboard

Map custom HID events (such as the ones generated by some Logitech and
Apple Powerbooks USB keyboards) to the FN keycode.

Signed-off-by: Stelian Pop <[email protected]>
Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Vojtech Pavlik <[email protected]> 1125897212 -0500
committer Dmitry Torokhov <[email protected]> 1125897212 -0500

Input: HID - add the Trust Predator TH 400 gamepad to the badpad list

Reported-by: Karl Relton <[email protected]>
Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Vojtech Pavlik <[email protected]> 1125897195 -0500
committer Dmitry Torokhov <[email protected]> 1125897195 -0500

Input: HID - add a quirk for the Apple Powermouse

Add a quirk for the Apple Powermouse, remapping GenericDesktop.Z to
Rel.HWheel, to allow horizontal scrolling in Linux.

Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Vojtech Pavlik <[email protected]> 1125897183 -0500
committer Dmitry Torokhov <[email protected]> 1125897183 -0500

Input: HID - fix URB success status handling

Add a missing break; statement to the URB status handling
in hid-core.c, avoiding flushing the request queue on success.

Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Vojtech Pavlik <[email protected]> 1125897167 -0500
committer Dmitry Torokhov <[email protected]> 1125897167 -0500

Input: sunkbd - extend mapping to handle Type-6 Sun keyboards

Map an unmarked key at 'Esc' position to KEY_MACRO

Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Vojtech Pavlik <[email protected]> 1125897159 -0500
committer Dmitry Torokhov <[email protected]> 1125897159 -0500

Input: iforce - use wait_event_interruptible_timeout

The timeout while() loops in iforce-packets.c lack a
set_current_state(TASK_INTERRUPTIBLE); call. The right solution is
to replace them with wait_event_interruptible_timeout().

Reported-by: Nishanth Aravamudan <[email protected]>
Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Micah F. Galizia <[email protected]> 1125897135 -0500
committer Dmitry Torokhov <[email protected]> 1125897135 -0500

Input: HID - add support for Logitech UltraX Media Remote control

The hid now supports the Logitech UltraX Media Remote control.
For now, ID 45 on the consumer usage page has been incorrectly
mapped to KEY_RADIO since no other devices uses it.

Signed-off-by: Micah F. Galizia <[email protected]>
Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Michael Haboustak <[email protected]> 1125897121 -0500
committer Dmitry Torokhov <[email protected]> 1125897121 -0500

Input: HID - handle multi-transascion reports

Fixes handling of multi-transaction reports for HID devices. New
function hid_size_buffers() that calculates the longest report
for each endpoint and stores the result in the hid_device object.
These lengths are used to allocate buffers that are large enough
to store any report on the endpoint. For compatibility, the minimum
size for an endpoint buffer set to HID_BUFFER_SIZE rather than the
known optimal case (the longest report length).

It fixes bug #3063 in bugzilla.

Signed-off-by: Michael Haboustak <[email protected]>

I simplified the patch a bit to use just a single buffer size.

Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Vojtech Pavlik <[email protected]> 1125897101 -0500
committer Dmitry Torokhov <[email protected]> 1125897101 -0500

Input: atkbd - handle keyboards generating scancode 0x7f

Extend bat_xl handling to do err_xl handling, so that
keyboards using 0x7f scancode for regular keys can work.

Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Vojtech Pavlik <[email protected]> 1125896888 -0500
committer Dmitry Torokhov <[email protected]> 1125896888 -0500

Input: HID - add more consumer usages

Extend mapping of the consumer usage page in hid-input.c to handle
more cases appearing on new USB keyboards.

Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Vojtech Pavlik <[email protected]> 1125896879 -0500
committer Dmitry Torokhov <[email protected]> 1125896879 -0500

Input: add HID simulation mappings

Add simulation usage page mappings to hid-input.c to support
a new crop of joysticks using them to designate Rudder and
Throttle controls.

Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Vojtech Pavlik <[email protected]> 1125896857 -0500
committer Dmitry Torokhov <[email protected]> 1125896857 -0500

Inpur: recognize and ignore Logitech vendor usages in HID

These get in our way with MX mice.

Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Dmitry Torokhov <[email protected]> 1125816130 -0500
committer Dmitry Torokhov <[email protected]> 1125816130 -0500

Input: i8042 - add Lifebook E4010 to MUX blacklist

Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Dmitry Torokhov <[email protected]> 1125816120 -0500
committer Dmitry Torokhov <[email protected]> 1125816120 -0500

Input: i8042 - add i8042.nokbd module option to allow supressing
       creation of keyboard port.

Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Dmitry Torokhov <[email protected]> 1125816111 -0500
committer Dmitry Torokhov <[email protected]> 1125816111 -0500

Input: i8042 - fix IRQ printing when either KBD or AUX port
       is absent from ACPI/PNP tables.

Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Dmitry Torokhov <[email protected]> 1125816098 -0500
committer Dmitry Torokhov <[email protected]> 1125816098 -0500

Input: make i8042_platform_init return 'real' error code

Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Dmitry Torokhov <[email protected]> 1125816087 -0500
committer Dmitry Torokhov <[email protected]> 1125816087 -0500

Input: i8042 - clean up initialization code; abort if we
       can't create all ports.

Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Ian Campbell <[email protected]> 1125816074 -0500
committer Dmitry Torokhov <[email protected]> 1125816074 -0500

Input: fix checking whether new keycode fits size-wise

When dev->keycodesize == sizeof(int) the old code produces
incorrect result.

Signed-off-by: Ian Campbell <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Vojtech Pavlik <[email protected]> 1125816055 -0500
committer Dmitry Torokhov <[email protected]> 1125816055 -0500

Input: psmouse - add new Logitech wheel mouse model

Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Vojtech Pavlik <[email protected]> 1125816043 -0500
committer Dmitry Torokhov <[email protected]> 1125816043 -0500

Input: ALPS - fix wheel decoding

Signed-off-by: Vojtech Pavlik <[email protected]>
Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Dmitry Torokhov <[email protected]> 1125816020 -0500
committer Dmitry Torokhov <[email protected]> 1125816020 -0500

Input: rework psmouse attributes to reduce module size

Rearrange attribute code to use generic show and set handlers
instead of replicating them for every attribute; switch to
using attribute_group instead of creating all attributes
manually. All this saves about 4K.

Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------
author Stephen Evanchik <[email protected]> 1123482378 -0500
committer Dmitry Torokhov <[email protected]> 1123482378 -0500

Input: psmouse - add support for IBM TrackPoint devices.

Signed-off-by: Dmitry Torokhov <[email protected]>

--------------------------

-- 
Vojtech Pavlik
SuSE Labs, SuSE CR
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux