<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/hid, branch v3.2.35</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/hid?h=v3.2.35</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/hid?h=v3.2.35'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-12-06T11:20:16Z</updated>
<entry>
<title>HID: add quirk for Freescale i.MX28 ROM recovery</title>
<updated>2012-12-06T11:20:16Z</updated>
<author>
<name>Marek Vasut</name>
<email>marex@denx.de</email>
</author>
<published>2012-08-05T21:57:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4e0ba0daed156278391f22f92575f4e8fdd41927'/>
<id>urn:sha1:4e0ba0daed156278391f22f92575f4e8fdd41927</id>
<content type='text'>
commit 2843b673d03421e0e73cf061820d1db328f7c8eb upstream.

The USB recovery mode present in i.MX28 ROM emulates USB HID.
It needs this quirk to behave properly.

Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Cc: Chen Peter &lt;B29397@freescale.com&gt;
Cc: Greg KH &lt;greg@kroah.com&gt;
Cc: Jiri Kosina &lt;jkosina@suse.cz&gt;
[jkosina@suse.cz: fix alphabetical ordering]
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>HID: microsoft: fix invalid rdesc for 3k kbd</title>
<updated>2012-11-16T16:47:02Z</updated>
<author>
<name>Jiri Slaby</name>
<email>jslaby@suse.cz</email>
</author>
<published>2012-10-19T11:28:46Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a265603048f8340597e1d6eab7a2500094484fb5'/>
<id>urn:sha1:a265603048f8340597e1d6eab7a2500094484fb5</id>
<content type='text'>
commit 3ccc60f9d8c39180c205dba1a020735bda1b2491 upstream.

Microsoft Digital Media Keyboard 3000 has two interfaces, and the
second one has a report descriptor with a bug. The second collection
says:
05 01 -- global; usage page -- 01 -- Generic Desktop Controls
09 80 -- local; usage -- 80 -- System Control
a1 01 -- main; collection -- 01 -- application

85 03 -- global; report ID -- 03
19 00 -- local; Usage Minimum -- 00
29 ff -- local; Usage Maximum -- ff
15 00 -- global; Logical Minimum -- 0
26 ff 00 -- global; Logical Maximum -- ff
81 00 -- main; input

c0 -- main; End Collection

I.e. it makes us think that there are all kinds of usages of system
control. That the keyboard is a not only a keyboard, but also a
joystick, mouse, gamepad, keypad, etc. The same as for the Wireless
Desktop Receiver, this should be Physical Min/Max. So fix that
appropriately.

References: https://bugzilla.novell.com/show_bug.cgi?id=776834
Signed-off-by: Jiri Slaby &lt;jslaby@suse.cz&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>HID: hidraw: don't deallocate memory when it is in use</title>
<updated>2012-10-10T02:31:18Z</updated>
<author>
<name>Ratan Nalumasu</name>
<email>ratan@google.com</email>
</author>
<published>2012-09-22T18:46:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=163aec38df496440970fbbe37f24cd4be9fea1d8'/>
<id>urn:sha1:163aec38df496440970fbbe37f24cd4be9fea1d8</id>
<content type='text'>
commit 4fe9f8e203fdad1524c04beb390f3c6099781ed9 upstream.

When a device is unplugged, wait for all processes that have opened the device
to close before deallocating the device.

Signed-off-by: Ratan Nalumasu &lt;ratan@google.com&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>HID: hidraw: improve error handling in hidraw_init()</title>
<updated>2012-10-10T02:31:17Z</updated>
<author>
<name>Alexey Khoroshilov</name>
<email>khoroshilov@ispras.ru</email>
</author>
<published>2012-08-15T19:31:45Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3084fc2f2e8cf84b1d0a66323c26943d5ca98860'/>
<id>urn:sha1:3084fc2f2e8cf84b1d0a66323c26943d5ca98860</id>
<content type='text'>
commit bcb4a75bde3821cecb17a71d287abfd6ef9bd68d upstream.

Several improvements in error handling:
- do not report success if alloc_chrdev_region() failed
- check for error code of cdev_add()
- use unregister_chrdev_region() instead of unregister_chrdev()
  if class_create() failed

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov &lt;khoroshilov@ispras.ru&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>HID: hidraw: fix list-&gt;buffer memleak</title>
<updated>2012-10-10T02:31:17Z</updated>
<author>
<name>Matthieu CASTET</name>
<email>matthieu.castet@parrot.com</email>
</author>
<published>2012-06-28T14:51:56Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3313aa9015c7c868a9bcdb7b1c143719d2873a66'/>
<id>urn:sha1:3313aa9015c7c868a9bcdb7b1c143719d2873a66</id>
<content type='text'>
commit 4c7b417ecb756e85dfc955b0e7a04fd45585533e upstream.

If we don't read fast enough hidraw device, hidraw_report_event
will cycle and we will leak list-&gt;buffer.
Also list-&gt;buffer are not free on release.
After this patch, kmemleak report nothing.

Signed-off-by: Matthieu CASTET &lt;matthieu.castet@parrot.com&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>HID: hidraw: add proper error handling to raw event reporting</title>
<updated>2012-10-10T02:31:16Z</updated>
<author>
<name>Jiri Kosina</name>
<email>jkosina@suse.cz</email>
</author>
<published>2012-04-26T22:56:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fb1c3652bb3e6690e50520c2d9a1493f15d93722'/>
<id>urn:sha1:fb1c3652bb3e6690e50520c2d9a1493f15d93722</id>
<content type='text'>
commit b6787242f32700377d3da3b8d788ab3928bab849 upstream.

If kmemdup() in hidraw_report_event() fails, we are not propagating
this fact properly.

Let hidraw_report_event() and hid_report_raw_event() return an error
value to the caller.

Reported-by: Oliver Neukum &lt;oneukum@suse.de&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>HID: Fix logitech-dj: missing Unifying device issue</title>
<updated>2012-10-10T02:31:03Z</updated>
<author>
<name>Nestor Lopez Casado</name>
<email>nlopezcasad@logitech.com</email>
</author>
<published>2012-09-21T10:21:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e189acb13e2dea021825975493d8e5222557df65'/>
<id>urn:sha1:e189acb13e2dea021825975493d8e5222557df65</id>
<content type='text'>
commit 596264082f10dd4a567c43d4526b2f54ac5520bc upstream.

This patch fixes an issue introduced after commit 4ea5454203d991ec
("HID: Fix race condition between driver core and ll-driver").

After that commit, hid-core discards any incoming packet that arrives while
hid driver's probe function is being executed.

This broke the enumeration process of hid-logitech-dj, that must receive
control packets in-band with the mouse and keyboard packets. Discarding mouse
or keyboard data at the very begining is usually fine, but it is not the case
for control packets.

This patch forces a re-enumeration of the paired devices when a packet arrives
that comes from an unknown device.

Based on a patch originally written by Benjamin Tissoires.

Signed-off-by: Nestor Lopez Casado &lt;nlopezcasad@logitech.com&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>dj: memory scribble in logi_dj</title>
<updated>2012-10-10T02:31:03Z</updated>
<author>
<name>Alan Cox</name>
<email>alan@linux.intel.com</email>
</author>
<published>2012-09-04T14:10:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b457f46761db9cd50edf136f8c9541b8eb31f5f6'/>
<id>urn:sha1:b457f46761db9cd50edf136f8c9541b8eb31f5f6</id>
<content type='text'>
commit 8a55ade76551e3927b4e41ee9e7751875d18bc25 upstream.

Allocate a structure not a pointer to it !

Signed-off-by: Alan Cox &lt;alan@linux.intel.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>HID: logitech: don't use stack based dj_report structures</title>
<updated>2012-10-10T02:31:02Z</updated>
<author>
<name>Marc Dionne</name>
<email>marc.c.dionne@gmail.com</email>
</author>
<published>2012-06-01T22:12:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=01d35d12e9a77448d7e6e5ab653ae8ff93fecd26'/>
<id>urn:sha1:01d35d12e9a77448d7e6e5ab653ae8ff93fecd26</id>
<content type='text'>
commit d8dc3494f77a5cc3b274bae36f7e74e85cf8a407 upstream.

On a system with a logitech wireless keyboard/mouse and DMA-API debugging
enabled, this warning appears at boot:

kernel: WARNING: at lib/dma-debug.c:929 check_for_stack.part.12+0x70/0xa7()
kernel: Hardware name: MS-7593
kernel: uhci_hcd 0000:00:1d.1: DMA-API: device driver maps memory fromstack [addr=ffff8801b0079c29]

Make logi_dj_recv_query_paired_devices and logi_dj_recv_switch_to_dj_mode
use a structure allocated with kzalloc rather than a stack based one.

Signed-off-by: Marc Dionne &lt;marc.c.dionne@gmail.com&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>HID: logitech: fix mask to enable DJ mode</title>
<updated>2012-10-10T02:31:02Z</updated>
<author>
<name>Nestor Lopez Casado</name>
<email>nlopezcasad@logitech.com</email>
</author>
<published>2012-02-02T09:54:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b66c949a4240072010d1fb6a1dac82360ea1b876'/>
<id>urn:sha1:b66c949a4240072010d1fb6a1dac82360ea1b876</id>
<content type='text'>
commit 765031668fb2b064aebd9a568e5ad794cbe3413a upstream.

The user can only experience the bug if she pairs 6 devices to a Unifying
receiver. The sixth paired device would not work.

The value changed is actually a bitmask that enables reporting from each
paired device. As the sixth bit was not set, the sixth device reports are
ignored by the receiver and never get to the driver.

Signed-off-by: Nestor Lopez Casado &lt;nlopezcasad@logitech.com&gt;

 drivers/hid/hid-logitech-dj.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
</feed>
