From: Jiri Kosina Date: Mon, 13 Apr 2015 21:41:15 +0000 (+0200) Subject: Merge branches 'for-4.0/upstream-fixes', 'for-4.1/genius', 'for-4.1/huion-uclogic... X-Git-Tag: v4.1-rc1~150^2~1 X-Git-Url: http://git.cascardo.info/?p=cascardo%2Flinux.git;a=commitdiff_plain;h=05f6d02521d4c7a656c5135d6d81c345ce531ac0 Merge branches 'for-4.0/upstream-fixes', 'for-4.1/genius', 'for-4.1/huion-uclogic-merge', 'for-4.1/i2c-hid', 'for-4.1/kconfig-drop-expert-dependency', 'for-4.1/logitech', 'for-4.1/multitouch', 'for-4.1/rmi', 'for-4.1/sony', 'for-4.1/upstream' and 'for-4.1/wacom' into for-linus --- 05f6d02521d4c7a656c5135d6d81c345ce531ac0 diff --cc drivers/hid/hid-ids.h index 3bce9c7e6fa6,b699daf08124,204312bfab2c,204312bfab2c,204312bfab2c,46edb4d3ed28,204312bfab2c,46edb4d3ed28,46edb4d3ed28,46edb4d3ed28,7fe5590b328b..41f167e4d75f --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h @@@@@@@@@@@@ -459,11 -459,6 -459,6 -459,6 -459,6 -459,6 -459,6 -459,6 -459,6 -459,6 -459,10 +459,11 @@@@@@@@@@@@ #define USB_DEVICE_ID_UGCI_FLYING 0x0020 #define USB_DEVICE_ID_UGCI_FIGHTING 0x0030 +++++++++ #define USB_VENDOR_ID_HP 0x03f0 -#define USB_PRODUCT_ID_HP_LOGITECH_OEM_USB_OPTICAL_MOUSE 0x0a4a ++++++++++#define USB_PRODUCT_ID_HP_LOGITECH_OEM_USB_OPTICAL_MOUSE_0A4A 0x0a4a ++++++++++#define USB_PRODUCT_ID_HP_LOGITECH_OEM_USB_OPTICAL_MOUSE_0B4A 0x0b4a +++++++++ #define USB_PRODUCT_ID_HP_PIXART_OEM_USB_OPTICAL_MOUSE 0x134a +++++++++ #define USB_VENDOR_ID_HUION 0x256c #define USB_DEVICE_ID_HUION_TABLET 0x006e diff --cc drivers/hid/hid-sony.c index 1896c019e302,31e9d2561106,1896c019e302,1896c019e302,1896c019e302,31e9d2561106,1896c019e302,31e9d2561106,fa11930dfee2,31e9d2561106,1896c019e302..27f67e7ebf10 --- a/drivers/hid/hid-sony.c +++ b/drivers/hid/hid-sony.c @@@@@@@@@@@@ -802,9 -802,9 -802,9 -802,9 -802,9 -802,9 -802,9 -802,9 -802,10 -802,9 -802,9 +802,10 @@@@@@@@@@@@ union sixaxis_output_report_01 #define DS4_REPORT_0x05_SIZE 32 #define DS4_REPORT_0x11_SIZE 78 #define DS4_REPORT_0x81_SIZE 7 -------- --#define SIXAXIS_REPORT_0xF2_SIZE 18 ++++++++ ++#define SIXAXIS_REPORT_0xF2_SIZE 17 ++++++++ ++#define SIXAXIS_REPORT_0xF5_SIZE 8 - - --- static spinlock_t sony_dev_list_lock; + + +++ static DEFINE_SPINLOCK(sony_dev_list_lock); static LIST_HEAD(sony_device_list); static DEFINE_IDA(sony_device_id_allocator); @@@@@@@@@@@@ -1136,12 -1136,12 -1136,12 -1136,12 -1136,12 -1136,12 -1136,12 -1136,12 -1140,29 -1136,12 -1136,12 +1140,29 @@@@@@@@@@@@ static int sixaxis_set_operational_usb( if (!buf) return -ENOMEM; -------- -- ret = hid_hw_raw_request(hdev, 0xf2, buf, 17, HID_FEATURE_REPORT, -------- -- HID_REQ_GET_REPORT); ++++++++ ++ ret = hid_hw_raw_request(hdev, 0xf2, buf, SIXAXIS_REPORT_0xF2_SIZE, ++++++++ ++ HID_FEATURE_REPORT, HID_REQ_GET_REPORT); ++++++++ ++ if (ret < 0) { ++++++++ ++ hid_err(hdev, "can't set operational mode: step 1\n"); ++++++++ ++ goto out; ++++++++ ++ } + +++ + + ++++++++ ++ /* ++++++++ ++ * Some compatible controllers like the Speedlink Strike FX and ++++++++ ++ * Gasia need another query plus an USB interrupt to get operational. ++++++++ ++ */ ++++++++ ++ ret = hid_hw_raw_request(hdev, 0xf5, buf, SIXAXIS_REPORT_0xF5_SIZE, ++++++++ ++ HID_FEATURE_REPORT, HID_REQ_GET_REPORT); ++++++++ ++ if (ret < 0) { ++++++++ ++ hid_err(hdev, "can't set operational mode: step 2\n"); ++++++++ ++ goto out; ++++++++ ++ } + + + + ++++++++ ++ ret = hid_hw_output_report(hdev, buf, 1); if (ret < 0) -------- -- hid_err(hdev, "can't set operational mode\n"); ++++++++ ++ hid_err(hdev, "can't set operational mode: step 3\n"); ++++++++ ++out: kfree(buf); return ret; diff --cc drivers/hid/usbhid/hid-quirks.c index 219ecb43fc23,989c59a4b5c9,6c9eab4f58bc,9be99a67bfe2,9be99a67bfe2,9be99a67bfe2,9be99a67bfe2,9be99a67bfe2,9be99a67bfe2,9be99a67bfe2,4e3ae9fbb9b5..a775143e6265 --- a/drivers/hid/usbhid/hid-quirks.c +++ b/drivers/hid/usbhid/hid-quirks.c @@@@@@@@@@@@ -78,13 -78,6 -78,6 -78,6 -78,6 -78,6 -78,6 -78,6 -78,6 -78,6 -78,9 +78,13 @@@@@@@@@@@@ static const struct hid_blacklist { USB_VENDOR_ID_ELO, USB_DEVICE_ID_ELO_TS2700, HID_QUIRK_NOGET }, { USB_VENDOR_ID_FORMOSA, USB_DEVICE_ID_FORMOSA_IR_RECEIVER, HID_QUIRK_NO_INIT_REPORTS }, { USB_VENDOR_ID_FREESCALE, USB_DEVICE_ID_FREESCALE_MX28, HID_QUIRK_NOGET }, - { USB_VENDOR_ID_HP, USB_PRODUCT_ID_HP_LOGITECH_OEM_USB_OPTICAL_MOUSE, HID_QUIRK_ALWAYS_POLL }, ++++++++++ { USB_VENDOR_ID_HP, USB_PRODUCT_ID_HP_LOGITECH_OEM_USB_OPTICAL_MOUSE_0A4A, HID_QUIRK_ALWAYS_POLL }, ++++++++++ { USB_VENDOR_ID_HP, USB_PRODUCT_ID_HP_LOGITECH_OEM_USB_OPTICAL_MOUSE_0B4A, HID_QUIRK_ALWAYS_POLL }, +++++++++ { USB_VENDOR_ID_HP, USB_PRODUCT_ID_HP_PIXART_OEM_USB_OPTICAL_MOUSE, HID_QUIRK_ALWAYS_POLL }, +++++++++ { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_C077, HID_QUIRK_ALWAYS_POLL }, ++++++++++ { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOUSE_C01A, HID_QUIRK_ALWAYS_POLL }, ++++++++++ { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOUSE_C05A, HID_QUIRK_ALWAYS_POLL }, ++++++++++ { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOUSE_C06A, HID_QUIRK_ALWAYS_POLL }, { USB_VENDOR_ID_MGE, USB_DEVICE_ID_MGE_UPS, HID_QUIRK_NOGET }, { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_3, HID_QUIRK_NO_INIT_REPORTS }, { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_3_JP, HID_QUIRK_NO_INIT_REPORTS },