Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
Pull HID subsystem updates from Jiri Kosina: - The need for HID_QUIRK_NO_INIT_REPORTS per-device quirk has been growing dramatically during past years, so the time has come to switch over the default, and perform the pro-active reading only in cases where it's really needed (multitouch, wacom). The only place where this behavior is (in some form) preserved is hiddev so that we don't introduce userspace-visible change of behavior. From Benjamin Tissoires - HID++ support for power_supply / baterry reporting. From Benjamin Tissoires and Bastien Nocera - Vast improvements / rework of DS3 and DS4 in Sony driver. From Roderick Colenbrander - Improvment (in terms of getting closer to the Microsoft's interpretation of slightly ambiguous specification) of logical range interpretation in case null-state is set in the rdesc. From Valtteri Heikkilä and Tomasz Kramkowski - A lot of newly supported device IDs and small assorted fixes * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (71 commits) HID: usbhid: Add HID_QUIRK_NOGET for Aten CS-1758 KVM switch HID: asus: support backlight on USB keyboards HID: wacom: Move wacom_remote_irq and wacom_remote_status_irq HID: wacom: generic: sync pad events only for actual packets HID: sony: remove redundant check for -ve err HID: sony: Make sure to unregister sensors on failure HID: sony: Make DS4 bt poll interval adjustable HID: sony: Set proper bit flags on DS4 output report HID: sony: DS4 use brighter LED colors HID: sony: Improve navigation controller axis/button mapping HID: sony: Use DS3 MAC address as unique identifier on USB HID: logitech-hidpp: add a sysfs file to tell we support power_supply HID: logitech-hidpp: enable HID++ 1.0 battery reporting HID: logitech-hidpp: add support for battery status for the K750 HID: logitech-hidpp: battery: provide CAPACITY_LEVEL HID: logitech-hidpp: rename battery level into capacity HID: logitech-hidpp: battery: provide ONLINE property HID: logitech-hidpp: notify battery on connect HID: logitech-hidpp: return an error if the queried feature is not present HID: logitech-hidpp: create the battery for all types of HID++ devices ...
This commit is contained in:
@@ -268,6 +268,8 @@ struct hid_item {
|
||||
#define HID_CP_APPLICATIONLAUNCHBUTTONS 0x000c0180
|
||||
#define HID_CP_GENERICGUIAPPLICATIONCONTROLS 0x000c0200
|
||||
|
||||
#define HID_DG_DEVICECONFIG 0x000d000e
|
||||
#define HID_DG_DEVICESETTINGS 0x000d0023
|
||||
#define HID_DG_CONFIDENCE 0x000d0047
|
||||
#define HID_DG_WIDTH 0x000d0048
|
||||
#define HID_DG_HEIGHT 0x000d0049
|
||||
@@ -322,7 +324,7 @@ struct hid_item {
|
||||
#define HID_QUIRK_MULTI_INPUT 0x00000040
|
||||
#define HID_QUIRK_HIDINPUT_FORCE 0x00000080
|
||||
#define HID_QUIRK_NO_EMPTY_INPUT 0x00000100
|
||||
#define HID_QUIRK_NO_INIT_INPUT_REPORTS 0x00000200
|
||||
/* 0x00000200 reserved for backward compatibility, was NO_INIT_INPUT_REPORTS */
|
||||
#define HID_QUIRK_ALWAYS_POLL 0x00000400
|
||||
#define HID_QUIRK_SKIP_OUTPUT_REPORTS 0x00010000
|
||||
#define HID_QUIRK_SKIP_OUTPUT_REPORT_ID 0x00020000
|
||||
@@ -541,7 +543,6 @@ struct hid_device { /* device report descriptor */
|
||||
struct list_head inputs; /* The list of inputs */
|
||||
void *hiddev; /* The hiddev structure */
|
||||
void *hidraw;
|
||||
int minor; /* Hiddev minor number */
|
||||
|
||||
int open; /* is the device open by anyone? */
|
||||
char name[128]; /* Device name */
|
||||
|
@@ -32,6 +32,18 @@
|
||||
* In-kernel definitions.
|
||||
*/
|
||||
|
||||
struct hiddev {
|
||||
int minor;
|
||||
int exist;
|
||||
int open;
|
||||
struct mutex existancelock;
|
||||
wait_queue_head_t wait;
|
||||
struct hid_device *hid;
|
||||
struct list_head list;
|
||||
spinlock_t list_lock;
|
||||
bool initialized;
|
||||
};
|
||||
|
||||
struct hid_device;
|
||||
struct hid_usage;
|
||||
struct hid_field;
|
||||
|
@@ -14,9 +14,13 @@
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
struct regulator;
|
||||
|
||||
/**
|
||||
* struct i2chid_platform_data - used by hid over i2c implementation.
|
||||
* @hid_descriptor_address: i2c register where the HID descriptor is stored.
|
||||
* @supply: regulator for powering on the device.
|
||||
* @post_power_delay_ms: delay after powering on before device is usable.
|
||||
*
|
||||
* Note that it is the responsibility of the platform driver (or the acpi 5.0
|
||||
* driver, or the flattened device tree) to setup the irq related to the gpio in
|
||||
@@ -31,6 +35,8 @@
|
||||
*/
|
||||
struct i2c_hid_platform_data {
|
||||
u16 hid_descriptor_address;
|
||||
struct regulator *supply;
|
||||
int post_power_delay_ms;
|
||||
};
|
||||
|
||||
#endif /* __LINUX_I2C_HID_H */
|
||||
|
Reference in New Issue
Block a user