summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* HID: core: fix hid_hw_open() commentHisao Tanabe2018-05-161-1/+1
| | | | | | | | Fix comment typo for hid_hw_open(). [jkosina@suse.cz: write at least some changelog] Signed-off-by: Hisao Tanabe <xtanabe@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: i2c-hid: Add RESEND_REPORT_DESCR quirk for Toshiba Click Mini L9W-BHans de Goede2018-05-092-0/+3
| | | | | | | | | | The 0457:10fb touchscreen found on the Toshiba Click Mini L9W-B needs to have a report-decriptors command send to it on resume in order for the touchscreen to start generating events again on resume. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: intel-ish-hid: use put_device() instead of kfree()Arvind Yadav2018-04-261-1/+1
| | | | | | | | | Never directly free @dev after calling device_register(), even if it returned an error. Always use put_device() to give up the reference initialized. Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: intel_ish-hid: Stop using a static local buffer in get_report()Hans de Goede2018-04-251-10/+6
| | | | | | | | | | | | | | hid_ishtp_get_report() may be called by multiple callers at the same time, causing trouble with the static local buffer used. Also there is no reason to use a non stack buffer, the buffer is tiny and ishtp_cl_send() copies its contents so the lifetime is not an issue either. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: intel_ish-hid: Move header size check to inside the loopHans de Goede2018-04-251-10/+10
| | | | | | | | | | | | | With the headersize check outside of the loop, the second time through the loop the: "payload_len = recv_msg->hdr.size;" statement may deref recv_msg while it is pointing outside of our input buffer. Move the headersize check to inside the loop to fix this. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: wacom: Release device resource data obtained by devres_alloc()Arvind Yadav2018-04-251-1/+3
| | | | | | | | | Free device resource data, if __wacom_devm_sysfs_create_group is not successful. Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: lenovo: Add support for IBM/Lenovo Scrollpoint micepgzh2018-04-253-3/+48
| | | | | | | | | | | | | | The IBM/Lenovo Scrollpoint mice feature a trackpoint-like stick instead of a scrolling wheel capable of 2-D (vertical+horizontal) scrolling. hid-generic does only expose 1-D (vertical) scrolling functionality for these mice. This patch adds support for horizontal scrolling for the IBM/Lenovo Scrollpoint mice to hid-lenovo. [jkosina@suse.cz: remove change versioning from git changelog] Signed-off-by: Peter Ganzhorn <peter.ganzhorn@gmail.com> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Peter De Wachter <pdewacht@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: i2c-hid: fix inverted return value from i2c_hid_command()Jiri Kosina2018-04-191-1/+1
| | | | | | | | | | i2c_hid_command() returns non-zero in error cases (the actual errno). Error handling in for I2C_HID_QUIRK_RESEND_REPORT_DESCR case in i2c_hid_resume() had the check inverted; fix that. Fixes: 3e83eda467 ("HID: i2c-hid: Fix resume issue on Raydium touchscreen device") Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: i2c-hid: Fix resume issue on Raydium touchscreen deviceAaron Ma2018-04-122-0/+16
| | | | | | | | | | | | | | When Rayd touchscreen resumed from S3, it issues too many errors like: i2c_hid i2c-RAYD0001:00: i2c_hid_get_input: incomplete report (58/5442) And all the report data are corrupted, touchscreen is unresponsive. Fix this by re-sending report description command after resume. Add device ID as a quirk. Cc: stable@vger.kernel.org Signed-off-by: Aaron Ma <aaron.ma@canonical.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: wacom: bluetooth: send exit report for recent Bluetooth devicesAaron Armstrong Skomra2018-04-121-30/+46
| | | | | | | | | | | The code path for recent Bluetooth devices omits an exit report which resets all the values of the device. Fixes: 4922cd26f0 ("HID: wacom: Support 2nd-gen Intuos Pro's Bluetooth classic interface") Cc: <stable@vger.kernel.org> # 4.11 Signed-off-by: Aaron Armstrong Skomra <aaron.skomra@wacom.com> Reviewed-by: Ping Cheng <ping.cheng@wacom.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: hidraw: Fix crash on HIDIOCGFEATURE with a destroyed deviceRodrigo Rivas Costa2018-04-091-0/+5
| | | | | | | | | | | | | | Doing `ioctl(HIDIOCGFEATURE)` in a tight loop on a hidraw device and then disconnecting the device, or unloading the driver, can cause a NULL pointer dereference. When a hidraw device is destroyed it sets 0 to `dev->exist`. Most functions check 'dev->exist' before doing its work, but `hidraw_get_report()` was missing that check. Cc: stable@vger.kernel.org Signed-off-by: Rodrigo Rivas Costa <rodrigorivascosta@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: input: fix battery level reporting on BT miceDmitry Torokhov2018-04-092-8/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | The commit 581c4484769e ("HID: input: map digitizer battery usage") assumed that devices having input (qas opposed to feature) report for battery strength would report the data on their own, without the need to be polled by the kernel; unfortunately it is not so. Many wireless mice do not send unsolicited reports with battery strength data and have to be polled explicitly. As a complication, stylus devices on digitizers are not normally connected to the base and thus can not be polled - the base can only determine battery strength in the stylus when it is in proximity. To solve this issue, we add a special flag that tells the kernel to avoid polling the device (and expect unsolicited reports) and set it when report field with physical usage of digitizer stylus (HID_DG_STYLUS). Unless this flag is set, and we have not seen the unsolicited reports, the kernel will attempt to poll the device when userspace attempts to read "capacity" and "state" attributes of power_supply object corresponding to the devices battery. Fixes: 581c4484769e ("HID: input: map digitizer battery usage") Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=198095 Cc: stable@vger.kernel.org Reported-and-tested-by: Martin van Es <martin@mrvanes.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* Merge branch 'for-linus' of ↵Linus Torvalds2018-04-0527-253/+1180
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid Pull HID updates from Jiri Kosina: - 3rd generation Wacom Intuos BT device support from Aaron Armstrong Skomra - support for NSG-MR5U and NSG-MR7U devices from Todd Kelner - multitouch Razer Blade Stealth support from Benjamin Tissoires - Elantech touchpad support from Alexandrov Stansilav - a few other scattered-around fixes and cleanups to drivers and generic code * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (31 commits) HID: google: Enable PM Full On mode when adjusting backlight HID: google: add google hammer HID driver HID: core: reset the quirks before calling probe again HID: multitouch: do not set HID_QUIRK_NO_INIT_REPORTS HID: core: remove the need for HID_QUIRK_NO_EMPTY_INPUT HID: use BIT() macro for quirks too HID: use BIT macro instead of plain integers for flags HID: multitouch: remove dead zones of Razer Blade Stealth HID: multitouch: export a quirk for the button handling of touchpads HID: usbhid: extend the polling interval configuration to keyboards HID: ntrig: document sysfs interface HID: wacom: wacom_wac_collection() is local to wacom_wac.c HID: wacom: generic: add the "Report Valid" usage HID: wacom: generic: Support multiple tools per report HID: wacom: Add support for 3rd generation Intuos BT HID: core: rewrite the hid-generic automatic unbind HID: sony: Add touchpad support for NSG-MR5U and NSG-MR7U remotes HID: hid-multitouch: Use true and false for boolean values HID: hid-ntrig: use true and false for boolean values HID: logitech-hidpp: document sysfs interface ...
| * Merge branch 'for-4.17/wacom' into for-linusJiri Kosina2018-04-052-48/+179
| |\ | | | | | | | | | Pull support for 3rd generation Intuos BT device
| | * HID: wacom: wacom_wac_collection() is local to wacom_wac.cJiri Kosina2018-03-071-1/+1
| | | | | | | | | | | | | | | | | | ... and therefore should be static. Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * HID: wacom: generic: add the "Report Valid" usageAaron Armstrong Skomra2018-03-072-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Wacom Bluetooth reports contain multiple pen frames per report. Each frame contains a flag indicating if the frame is valid. Future Wacom devices with this type of report may contain HID descriptors, add support for this usage to the generic codepath of the Wacom driver. Signed-off-by: Aaron Armstrong Skomra <skomra@gmail.com> Reviewed-by: Ping Cheng <ping.cheng@wacom.com> Reviewed-by: Jason Gerecke <jason.gerecke@wacom.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * HID: wacom: generic: Support multiple tools per reportAaron Armstrong Skomra2018-03-071-26/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some Wacom devices contain contain Pen and Pad usages in the same report. Future devices of this type may utilize HID Descriptors. The generic code path of the Wacom driver previously assumed pen, touch, and pad reports were delivered in separate reports. This patch adds support for processing each collection of a report separately, in order to support reports with multiple tools. Signed-off-by: Aaron Armstrong Skomra <skomra@gmail.com> Reviewed-by: Ping Cheng <ping.cheng@wacom.com> Reviewed-by: Jason Gerecke <jason.gerecke@wacom.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * HID: wacom: Add support for 3rd generation Intuos BTAaron Armstrong Skomra2018-03-072-20/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | Use the code path that predates generic device support. Signed-off-by: Aaron Armstrong Skomra <skomra@gmail.com> Reviewed-by: Ping Cheng <ping.cheng@wacom.com> Reviewed-by: Jason Gerecke <jason.gerecke@wacom.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | Merge branch 'for-4.17/upstream' into for-linusJiri Kosina2018-04-059-63/+54
| |\ \ | | | | | | | | | | | | Pull a few small generic code cleanups.
| | * | HID: usbhid: extend the polling interval configuration to keyboardsFilip Alac2018-03-232-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For mouse and joystick devices user can change the polling interval via usbhid.mousepoll and usbhid.jspoll. Implement the same thing for keyboards, so user can reduce(or increase) input latency this way. This has been tested with a Cooler Master Devastator with kbpoll=32, resulting in delay between events of 32 ms(values were taken from evtest). Signed-off-by: Filip Alac <filipalac@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: core: rewrite the hid-generic automatic unbindBenjamin Tissoires2018-03-063-48/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We actually can have the unbind/rebind logic in hid-core.c, leaving only the match function in hid-generic. This makes hid-generic simpler and the whole logic simpler too. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: hid-multitouch: Use true and false for boolean valuesGustavo A. R. Silva2018-03-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Assign true or false to boolean variables instead of an integer value. This issue was detected with the help of Coccinelle. Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: hid-ntrig: use true and false for boolean valuesGustavo A. R. Silva2018-03-061-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Assign true or false to boolean variables instead of an integer value. This issue was detected with the help of Coccinelle. Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: uhid: use strlcpy() instead of strncpy()Xiongfeng Wang2018-02-161-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc-8 reports drivers/hid/uhid.c: In function 'uhid_dev_create2': ./include/linux/string.h:245:9: warning: '__builtin_strncpy' output may be truncated copying 127 bytes from a string of length 127 [-Wstringop-truncation] The compiler require that the input param 'len' of strncpy() should be greater than the length of the src string, so that '\0' is copied as well. We can just use strlcpy() to avoid this warning. Signed-off-by: Xiongfeng Wang <xiongfeng.wang@linaro.org> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: asus: make array 'buf' static constColin Ian King2018-02-161-1/+3
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't populate the const read-only array 'buf' on the stack but instead make it static. Makes the object code smaller by 26 bytes: Before: text data bss dec hex filename 14378 2384 64 16826 41ba linux/drivers/hid/hid-asus.o After: text data bss dec hex filename 14296 2440 64 16800 41a0 linux/drivers/hid/hid-asus.o (gcc version 7.2.0 x86_64) [jkosina@suse.cz: change commit message slightly] Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | Merge branch 'for-4.17/sony' into for-linusJiri Kosina2018-04-053-6/+130
| |\ \ | | | | | | | | | | | | Pull support for NSG-MR5U and NSG-MR7U devices.
| | * | HID: sony: Add touchpad support for NSG-MR5U and NSG-MR7U remotesTodd Kelner2018-03-063-6/+130
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sony's NSG-MR5U and NSG-MR7U remote controls have a full keyboard and a touchpad. The keyboard is already supported by the existing Linux kernel and drivers but the touchpad is not recognized. This patch adds the coded needed to bring full functionality to the touchpad. Note that these remotes use the vendor code for SMK even though they are Sony branded. Known limitations - The built-in accelerometers are not supported by these changes - When the Drag (Fn) key is used as a mouse button, the button is automatically released when the key begins repeating. There are two workarounds for this 1) Use the button behind the touchpad instead of the Drag (Fn) key or 2) Disable the key repeat functionality or increase the key repeat delay. Signed-off-by: Todd Kelner <tsopdump@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | Merge branch 'for-4.17/multitouch' into for-linusJiri Kosina2018-04-056-77/+65
| |\ \ | | | | | | | | | | | | Pull Razer Blade Stealth support improvement and a few generic cleanups
| | * | HID: core: reset the quirks before calling probe againBenjamin Tissoires2018-03-232-7/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Given that now the quirk handling is done in hid-quirk.c, we can actually reset the quirks before calling .probe(), so that the drivers do not need to keep track of initial quirks. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: multitouch: do not set HID_QUIRK_NO_INIT_REPORTSBenjamin Tissoires2018-03-231-17/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is set by default now, so there is no point setting it in the driver Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: core: remove the need for HID_QUIRK_NO_EMPTY_INPUTBenjamin Tissoires2018-03-235-10/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is no real point of registering an empty input node. This should be default, but given some drivers need the blank input node to set it up during input_configured, we need to postpone the check for hidinput_has_been_populated(). Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: use BIT() macro for quirks tooBenjamin Tissoires2018-03-231-26/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This should prevent future mess ups fortunately. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net> -- include/linux/hid.h | 52 ++++++++++++++++++++++++++-------------------------- 1 file changed, 26 insertions(+), 26 deletions(-) Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: use BIT macro instead of plain integers for flagsBenjamin Tissoires2018-03-231-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This can lead to some hairy situation with the developer losing a day or two realizing that 4 should be after 2, not 3. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Reviewed-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net> -- include/linux/hid.h | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: multitouch: remove dead zones of Razer Blade StealthBenjamin Tissoires2018-03-231-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Razer Blade Stealth detects palms too aggressively and this creates a dead zone around the touchpad. Users like being able to use their entire touchpad, so we should probably not filter out the "palm" events from the device and report them as regular touches, leaving the palm detection up to the upper stack Link: https://bugs.freedesktop.org/show_bug.cgi?id=105409 Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: multitouch: export a quirk for the button handling of touchpadsBenjamin Tissoires2018-03-231-12/+10
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | Instead of using the class name, we better have a specific quirk for it so other classes can make use of it. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | Merge branch 'for-4.17/hid-i2c' into for-linusJiri Kosina2018-04-051-2/+2
| |\ \ | | | | | | | | | | | | Small hid-i2c acpi cleanup.
| | * | HID: i2c-hid: Use ACPI_COMPANION() directlyAndy Shevchenko2018-02-161-2/+2
| | |/ | | | | | | | | | | | | | | | | | | | | | Instead of doing additional checks and functional calls, just get ACPI companion device directly. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | Merge branch 'for-4.17/hid-elan' into for-linusJiri Kosina2018-04-055-0/+434
| |\ \ | | | | | | | | | | | | | | | | Pull new hid-elan driver, currently providing support for touchpad found in certain HP Pavilion x2 laptops.
| | * | HID: Add driver for USB ELAN TouchpadAlexandrov Stansilav2018-02-165-0/+434
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is driver for usb touchpad found on HP Pavilion x2 10-p0xx laptop. On this device keyboard and touchpad connected as a single usb device with two interfaces: keyboard, which exposes ordinary keys and second interface is touchpad which also contains FlightMode button and audio mute led (which physically placed on keyboard for some reason). Initially, this touchpad works in mouse emulation mode, this driver will switch it to touchpad mode, which can track 5 fingers and can report coordinates for two of them. Signed-off-by: Alexandrov Stansilav <neko@nya.ai> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | Merge branch 'for-4.17/google-hammer' into for-linusJiri Kosina2018-04-054-0/+148
| |\ \ | | | | | | | | | | | | Support for Google Hammer device.
| | * | HID: google: Enable PM Full On mode when adjusting backlightHaridhar Kalvala2018-03-281-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | hammer LED backlight brightness is not getting set when USB device is in suspend state. This patch fixes the issue by requesting USB HID device to be in FULLON mode, so that sending hardware output report and hardware raw request won't fail to set brightness, and set device back to NORMAL mode once this call returns. Signed-off-by: Haridhar Kalvala <haridhar.kalvala@intel.com> Reviewed-by: Dmitry Torokhov <dtor@chromium.org> Signed-off-by: Nicolas Boichat <drinkcat@chromium.org> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: google: add google hammer HID driverWei-Ning Huang2018-03-274-0/+134
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | Add Google hammer HID driver. This driver allow us to control hammer keyboard backlight and support future features. Signed-off-by: Wei-Ning Huang <wnhuang@google.com> Signed-off-by: Nicolas Boichat <drinkcat@chromium.org> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | Merge branch 'for-4.17/elecom' into for-linusJiri Kosina2018-04-054-30/+34
| |\ \ | | | | | | | | | | | | Support for new elecom device.
| | * | HID: elecom: add support for EX-G M-XT4DRBK trackballTomasz Kramkowski2018-03-063-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch enables the 6th button on the ELECOM EX-G M-XT4DRBK trackball mouse. This is a left handed EX-G variant which only comes in a wireless (D) model. It has a total of 6 buttons but one of these is not available because of how the HID descriptor is configured. Signed-off-by: Tomasz Kramkowski <tk@the-tk.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| | * | HID: elecom: refer to trackballs by model name instead of seriesTomasz Kramkowski2018-03-064-30/+30
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch changes all references to ELECOM trackballs using their series name to refer to them by their model name. ELECOM provides multiple series of mice such as EX-G, HUGE, and DEFT. Although it has not caused conflicts in the driver, there can be more than one iteration of mice in each series. For example, there are 7 variants of EX-G trackballs but only three (M-XT3URBK, M-XT3DRBK, and M-XT4DRBK) need a driver to work correctly. There are also 4 DEFT series trackballs but two of them have the same VID:PID as the other two. I picked the earlier model for the naming of the PID macros. Signed-off-by: Tomasz Kramkowski <tk@the-tk.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | HID: ntrig: document sysfs interfaceAishwarya Pant2018-03-071-0/+70
| | | | | | | | | | | | | | | | | | | | | | | | Add sysfs documentation for N-Trig touchscreens under Documentation/ABI. Descriptions have been collected from code comments. Signed-off-by: Aishwarya Pant <aishpant@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | HID: logitech-hidpp: document sysfs interfaceAishwarya Pant2018-03-061-0/+19
| | | | | | | | | | | | | | | | | | | | | Descriptions have been collected from git commit logs. Signed-off-by: Aishwarya Pant <aishpant@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | HID: corsair: Add K70 Vengeance and K70 RAPIDFIRE toAaron Bottegal2018-02-161-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | K70 Vengeance sends garbage keypresses when changing backlight brightness. This hooks to the existing corsair driver, which filters out those invalid keypresses on similar devices in the input mapping code. V2: Fix spelling. Signed-off-by: Aaron Bottegal <aaronbottegal@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | HID: Fix hid_report_len usageAaron Ma2018-02-164-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Follow the change of return type u32 of hid_report_len, fix all the types of variables those get the return value of hid_report_len to u32, and all other code already uses u32. Cc: stable@vger.kernel.org Signed-off-by: Aaron Ma <aaron.ma@canonical.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | HID: core: Fix size as type u32Aaron Ma2018-02-162-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When size is negative, calling memset will make segment fault. Declare the size as type u32 to keep memset safe. size in struct hid_report is unsigned, fix return type of hid_report_len to u32. Cc: stable@vger.kernel.org Signed-off-by: Aaron Ma <aaron.ma@canonical.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>