- 09 5月, 2018 1 次提交
-
-
由 Hans de Goede 提交于
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: NHans de Goede <hdegoede@redhat.com> Acked-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 26 4月, 2018 1 次提交
-
-
由 Arvind Yadav 提交于
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: NArvind Yadav <arvind.yadav.cs@gmail.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 25 4月, 2018 4 次提交
-
-
由 Hans de Goede 提交于
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: NHans de Goede <hdegoede@redhat.com> Reviewed-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Hans de Goede 提交于
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: NHans de Goede <hdegoede@redhat.com> Reviewed-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Arvind Yadav 提交于
Free device resource data, if __wacom_devm_sysfs_create_group is not successful. Signed-off-by: NArvind Yadav <arvind.yadav.cs@gmail.com> Reviewed-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 pgzh 提交于
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: NPeter Ganzhorn <peter.ganzhorn@gmail.com> Reviewed-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: NPeter De Wachter <pdewacht@gmail.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 19 4月, 2018 1 次提交
-
-
由 Jiri Kosina 提交于
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: 3e83eda4 ("HID: i2c-hid: Fix resume issue on Raydium touchscreen device") Reported-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 12 4月, 2018 2 次提交
-
-
由 Aaron Ma 提交于
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: NAaron Ma <aaron.ma@canonical.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Aaron Armstrong Skomra 提交于
The code path for recent Bluetooth devices omits an exit report which resets all the values of the device. Fixes: 4922cd26 ("HID: wacom: Support 2nd-gen Intuos Pro's Bluetooth classic interface") Cc: <stable@vger.kernel.org> # 4.11 Signed-off-by: NAaron Armstrong Skomra <aaron.skomra@wacom.com> Reviewed-by: NPing Cheng <ping.cheng@wacom.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 09 4月, 2018 2 次提交
-
-
由 Rodrigo Rivas Costa 提交于
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: NRodrigo Rivas Costa <rodrigorivascosta@gmail.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Dmitry Torokhov 提交于
The commit 581c4484 ("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: 581c4484 ("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: NMartin van Es <martin@mrvanes.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 28 3月, 2018 1 次提交
-
-
由 Haridhar Kalvala 提交于
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: NHaridhar Kalvala <haridhar.kalvala@intel.com> Reviewed-by: NDmitry Torokhov <dtor@chromium.org> Signed-off-by: NNicolas Boichat <drinkcat@chromium.org> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 27 3月, 2018 1 次提交
-
-
由 Wei-Ning Huang 提交于
Add Google hammer HID driver. This driver allow us to control hammer keyboard backlight and support future features. Signed-off-by: NWei-Ning Huang <wnhuang@google.com> Signed-off-by: NNicolas Boichat <drinkcat@chromium.org> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 23 3月, 2018 6 次提交
-
-
由 Benjamin Tissoires 提交于
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: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: NPeter Hutterer <peter.hutterer@who-t.net> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Benjamin Tissoires 提交于
It is set by default now, so there is no point setting it in the driver Signed-off-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: NPeter Hutterer <peter.hutterer@who-t.net> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Benjamin Tissoires 提交于
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: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: NPeter Hutterer <peter.hutterer@who-t.net> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Benjamin Tissoires 提交于
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=105409Signed-off-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: NPeter Hutterer <peter.hutterer@who-t.net> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Benjamin Tissoires 提交于
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: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: NPeter Hutterer <peter.hutterer@who-t.net> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Filip Alac 提交于
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: NFilip Alac <filipalac@gmail.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 07 3月, 2018 4 次提交
-
-
由 Jiri Kosina 提交于
... and therefore should be static. Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Aaron Armstrong Skomra 提交于
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: NAaron Armstrong Skomra <skomra@gmail.com> Reviewed-by: NPing Cheng <ping.cheng@wacom.com> Reviewed-by: NJason Gerecke <jason.gerecke@wacom.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Aaron Armstrong Skomra 提交于
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: NAaron Armstrong Skomra <skomra@gmail.com> Reviewed-by: NPing Cheng <ping.cheng@wacom.com> Reviewed-by: NJason Gerecke <jason.gerecke@wacom.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Aaron Armstrong Skomra 提交于
Use the code path that predates generic device support. Signed-off-by: NAaron Armstrong Skomra <skomra@gmail.com> Reviewed-by: NPing Cheng <ping.cheng@wacom.com> Reviewed-by: NJason Gerecke <jason.gerecke@wacom.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 06 3月, 2018 6 次提交
-
-
由 Benjamin Tissoires 提交于
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: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Todd Kelner 提交于
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: NTodd Kelner <tsopdump@gmail.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Gustavo A. R. Silva 提交于
Assign true or false to boolean variables instead of an integer value. This issue was detected with the help of Coccinelle. Signed-off-by: NGustavo A. R. Silva <gustavo@embeddedor.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Gustavo A. R. Silva 提交于
Assign true or false to boolean variables instead of an integer value. This issue was detected with the help of Coccinelle. Signed-off-by: NGustavo A. R. Silva <gustavo@embeddedor.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Tomasz Kramkowski 提交于
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: NTomasz Kramkowski <tk@the-tk.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Tomasz Kramkowski 提交于
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: NTomasz Kramkowski <tk@the-tk.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 16 2月, 2018 10 次提交
-
-
由 Aaron Bottegal 提交于
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: NAaron Bottegal <aaronbottegal@gmail.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Xiongfeng Wang 提交于
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: NXiongfeng Wang <xiongfeng.wang@linaro.org> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Colin Ian King 提交于
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: NColin Ian King <colin.king@canonical.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Aaron Ma 提交于
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: NAaron Ma <aaron.ma@canonical.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Aaron Ma 提交于
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: NAaron Ma <aaron.ma@canonical.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Aaron Ma 提交于
When convert char array with signed int, if the inbuf[x] is negative then upper bits will be set to 1. Fix this by using u8 instead of char. ret_size has to be at least 3, hid_input_report use it after minus 2 bytes. Cc: stable@vger.kernel.org Signed-off-by: NAaron Ma <aaron.ma@canonical.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Guus Sliepen 提交于
This mouse sold by Corsair as the GLAIVE RGB gaming mouse has the same problem with its HID reports as the Scimitar PRO RGB, so reuse the same fix for the GLAIVE RGB. Signed-off-by: NGuus Sliepen <guus@sliepen.org> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Alexandrov Stansilav 提交于
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: NAlexandrov Stansilav <neko@nya.ai> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Andy Shevchenko 提交于
Instead of doing additional checks and functional calls, just get ACPI companion device directly. Signed-off-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
由 Karsten Koop 提交于
This patch adds support for new CASSY devices to the ldusb driver. The PIDs are also added to the ignore list in hid-quirks. Signed-off-by: NKarsten Koop <kkoop@ld-didactic.de> Cc: stable <stable@vger.kernel.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 12 2月, 2018 1 次提交
-
-
由 Linus Torvalds 提交于
This is the mindless scripted replacement of kernel use of POLL* variables as described by Al, done by this script: for V in IN OUT PRI ERR RDNORM RDBAND WRNORM WRBAND HUP RDHUP NVAL MSG; do L=`git grep -l -w POLL$V | grep -v '^t' | grep -v /um/ | grep -v '^sa' | grep -v '/poll.h$'|grep -v '^D'` for f in $L; do sed -i "-es/^\([^\"]*\)\(\<POLL$V\>\)/\\1E\\2/" $f; done done with de-mangling cleanups yet to come. NOTE! On almost all architectures, the EPOLL* constants have the same values as the POLL* constants do. But they keyword here is "almost". For various bad reasons they aren't the same, and epoll() doesn't actually work quite correctly in some cases due to this on Sparc et al. The next patch from Al will sort out the final differences, and we should be all done. Scripted-by: NAl Viro <viro@zeniv.linux.org.uk> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-