summaryrefslogtreecommitdiffstats
path: root/drivers/hid/hid-cougar.c
Commit message (Collapse)AuthorAgeFilesLines
* HID: cougar: Make use of the helper function devm_add_action_or_reset()Cai Huoqing2021-10-071-2/+1
| | | | | | | | | | | The helper function devm_add_action_or_reset() will internally call devm_add_action(), and if devm_add_action() fails then it will execute the action mentioned and return the error code. So use devm_add_action_or_reset() instead of devm_add_action() to simplify the error handling, reduce the code. Signed-off-by: Cai Huoqing <caihuoqing@baidu.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: cougar: Constify cougar_id_tableRikard Falkeborn2020-08-171-1/+1
| | | | | | | | cougar_id_table[] is not changed and can be made const to allow the compiler to put it in read-only memory. Signed-off-by: Rikard Falkeborn <rikard.falkeborn@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: do not call hid_set_drvdata(hdev, NULL) in driversBenjamin Tissoires2019-08-221-4/+2
| | | | | | | | | | | | | | This is a common pattern in the HID drivers to reset the drvdata. Some do it properly, some do it only in case of failure. But, this is actually already handled by driver core, so there is no need to do it manually. [for hid-sensor-hub.c] Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> [For hid-picolcd_core.c] Acked-by: Bruno Prémont <bonbons@linux-vserver.org> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
* HID: cougar: Add support for Cougar 700K Gaming KeyboardDaniel M. Lambea2018-11-211-0/+2
| | | | | | | | Add USB ID 060b:700a to the list of valid USB IDS for the cougar hid driver. Signed-off-by: Daniel M. Lambea <dmlambea@gmail.com> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
* HID: cougar: Stop processing vendor events on hid-coreDaniel M. Lambea2018-09-051-7/+13
| | | | | | | | | | | Special key events received by the custom vendor's hdev are translated to key events on the kbd iface's input device, so their processing must not continue. Return -EPERM from raw_event handler to effectively stop source events from being processed in hid-core. Signed-off-by: Daniel M. Lambea <dmlambea@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: cougar: Make parameter 'g6_is_space' dinamically settableDaniel M. Lambea2018-09-051-11/+35
| | | | | | | | | | Parameter g6_is_space instructs the driver to map G6 keypresses to KEY_SPACE (true) or to KEY_F18 (false). Make the parameter configurable via module_param_cb to allow users to change its value without reloading the module. Signed-off-by: Daniel M. Lambea <dmlambea@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: cougar: Add support for the Cougar 500k Gaming KeyboardDaniel M. Lambea2018-07-231-0/+312
Cougar 500k Gaming Keyboard have some special function keys that make the keyboard stop responding once pressed. Implement the custom vendor interface that deals with the extended keypresses to fix. The bug can be reproduced by plugging in the keyboard, then pressing the rightmost part of the spacebar. Signed-off-by: Daniel M. Lambea <dmlambea@gmail.com> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>